Files
2025-06-06 09:15:13 +02:00

210 lines
46 KiB
C#

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using com.itac.mes.imsapi.client.dotnet;
using com.itac.mes.imsapi.domain.container;
namespace com.itac.mes.imsapi
{
/// <summary>
/// frankp 20141211
/// A snapshot of he current IMS-API.
/// I do a generic logging for all API functions via a proxy. This requires all functions to reside in an interface instead of a class.
/// </summary>
public interface IIMSApi
{
int adviceConfirmAdvice(IMSApiSessionContextStruct sessionContext, string stationNumber, string userName, string password, int adviceId, int confirmationStatus, string[] adviceEditTextArray);
int adviceGetAdvice(IMSApiSessionContextStruct sessionContext, string stationNumber, bool ignoreStationNumber, bool checkStationGroup, bool checkPartGroup, KeyValue[] adviceFilters, out Advice[] adviceArray);
int apsGetWorkorderDetails(IMSApiSessionContextStruct sessionContext, string stationNumber, KeyValue[] apsGetWorkorderDetailsFilters, string[] apsGetWorkorderDetailResultKeys, out string[] apsGetWorkorderDetailResultValues, out bool hasMore);
int apsGetWorkorders(IMSApiSessionContextStruct sessionContext, string stationNumber, KeyValue[] apsGetWorkordersFilters, string[] apsGetWorkordersResultKeys, out string[] apsGetWorkordersResultValues, out bool hasMore);
int attribAppendAttributeValues(IMSApiSessionContextStruct sessionContext, string stationNumber, int objectType, string objectNumber, string objectDetail, long bookDate, int allowOverWrite, string[] attributeUploadKeys, string[] attributeUploadValues, out string[] attributeResultValues);
int attribCreateAttribute(IMSApiSessionContextStruct sessionContext, string stationNumber, int objectType, string attributeCode, string attributeDesc, string uniquenessType);
int attribGetAttributeValues(IMSApiSessionContextStruct sessionContext, string stationNumber, int objectType, string objectNumber, string objectDetail, string[] attributeCodeArray, int allMergeLevel, string[] attributeResultKeys, out string[] attributeResultValues);
int attribGetObjectsForAttributeValues(IMSApiSessionContextStruct sessionContext, string stationNumber, int objectType, string attributeCode, string attributeValue, int maxRows, KeyValue[] attributeFilters, string[] objectResultKeys, out string[] objectResultValues);
int attribRemoveAttributeValue(IMSApiSessionContextStruct sessionContext, string stationNumber, int objectType, string objectNumber, string objectDetail, string attributeCode, string attributeValueKey);
int batchAssignBatchNumberToWorkOrder(IMSApiSessionContextStruct sessionContext, string stationNumber, string workOrderNumber, string partNumber, string bomVersion, string bomIndex, string bomVersionErp, int processLayer, string batchNumber, double quantity, int activateWorkOrder);
int batchGetBatchInfo(IMSApiSessionContextStruct sessionContext, string stationNumber, KeyValue[] batchInfoFilter, string[] batchInfoResultKeys, out string[] batchInfoResultValues);
int batchGetRegisteredBatch(IMSApiSessionContextStruct sessionContext, string stationNumber, int processLayer, string[] batchResultKeys, out string[] batchResultValues);
int batchMergeBatch(IMSApiSessionContextStruct sessionContext, string stationNumber, string serialNumberRef, string serialNumberPos, string batchNumber, int processLayer, double usedBatchQuantity, int duplicateSerialNumber, int ignoreBatchComplete);
int batchRegisterBatch(IMSApiSessionContextStruct sessionContext, string stationNumber, string batchNumber, int processLayer, int ignoreBatchComplete, long registerDate);
int batchSplitBatchNumberToSerialNumber(IMSApiSessionContextStruct sessionContext, string stationNumber, ref string serialNumberRef, ref string serialNumberPos, string batchNumber, int processLayer, double usedBatchQuantity, int duplicateSerialNumber, int ignoreBatchComplete);
int batchUnregisterBatch(IMSApiSessionContextStruct sessionContext, string stationNumber, string batchNumber, int processLayer, double batchTotalQuantity, int batchComplete, long unregisterDate);
int configCreateParameters(IMSApiSessionContextStruct sessionContext, KeyValue[] options, string[] parameterUploadKeys, string[] parameterUploadValues, string[] parameterResultKeys, out string[] parameterResultValues);
int configDeleteParameters(IMSApiSessionContextStruct sessionContext, KeyValue[] options, KeyValue[] parameterFilter, string[] parameterResultKeys, out string[] parameterResultValues);
int configDeleteValues(IMSApiSessionContextStruct sessionContext, KeyValue[] options, KeyValue[] configContext, string[] uploadKeys, string[] uploadValues, string[] resultKeys, out string[] resultValues);
int configGetDimensionValues(IMSApiSessionContextStruct sessionContext, KeyValue[] options, KeyValue[] dimensionFilter, out string[] resultValues);
int configGetParameters(IMSApiSessionContextStruct sessionContext, KeyValue[] options, KeyValue[] parameterFilter, string[] parameterResultKeys, out string[] parameterResultValues);
int configGetValues(IMSApiSessionContextStruct sessionContext, KeyValue[] options, KeyValue[] configContext, KeyValue[] parameterFilter, string[] parameterResultKeys, out string[] parameterResultValues, string[] resultKeys, out string[] resultValues);
int configUpdateParameters(IMSApiSessionContextStruct sessionContext, KeyValue[] options, string[] parameterUploadKeys, string[] parameterUploadValues, string[] parameterResultKeys, out string[] parameterResultValues);
int configUpdateValues(IMSApiSessionContextStruct sessionContext, KeyValue[] options, KeyValue[] configContext, string[] uploadKeys, string[] uploadValues, string[] resultKeys, out string[] resultValues);
int customFunction(IMSApiSessionContextStruct sessionContext, string methodName, string[] inArgs, out string[] outArgs, out string customErrorString);
int edaAssignExternalData(IMSApiSessionContextStruct sessionContext, string stationNumber, int objectType, string objectNumber, string objectDetail, string[] assignExternalDataUploadKeys, string[] assignExternalDataUploadValues);
int edaGetExternalDataForObject(IMSApiSessionContextStruct sessionContext, string stationNumber, string[] externalDataFilterKeys, string[] externalDataFilterValues, string[] externalDataResultKeys, out string[] externalDataResultValues);
int edaGetNextFreeExternalData(IMSApiSessionContextStruct sessionContext, string stationNumber, int objectType, string objectNumber, string objectDetail, int functionMode, string[] nextFreeExternalDataFilterKeys, string[] nextFreeExternalDataFilterValues, string[] nextFreeExternalDataResultKeys, out string[] nextFreeExternalDataResultValues);
int edaGetObjectsForExternalData(IMSApiSessionContextStruct sessionContext, string stationNumber, string[] objectExternalDataFilterKeys, string[] objectExternalDataFilterValues, string[] objectExternalDataResultKeys, out string[] objectExternalDataResultValues);
int edaManageExternalData(IMSApiSessionContextStruct sessionContext, string stationNumber, int functionMode, string[] partGroupArray, string[] partNumberArray, KeyValue[] manageExternalData, string[] externalDataValues);
int equCheckEquipmentData(IMSApiSessionContextStruct sessionContext, string stationNumber, string workOrderNumber, string serialNumber, string partNumber, int processLayer, int returnFailuresOnly, string[] equipmentResultKeys, out string[] equipmentResultValues);
int equGetEquipment(IMSApiSessionContextStruct sessionContext, string stationNumber, KeyValue[] equipmentGetFilters, string[] equipmentGetResultKeys, out string[] equipmentGetResultValues);
int equGetRequiredEquipmentData(IMSApiSessionContextStruct sessionContext, string stationNumber, string workOrderNumber, string serialNumber, string partNumber, int processLayer, string pmGroup, string[] equipmentResultKeys, out string[] equipmentResultValues);
int equGetSetupEquipmentData(IMSApiSessionContextStruct sessionContext, string stationNumber, KeyValue[] equipmentSetupFilters, string[] equipmentSetupResultKeys, out string[] equipmentSetupResultValues);
int equRemoveEquipment(IMSApiSessionContextStruct sessionContext, string stationNumber, string workOrderNumber, string serialNumber, int processLayer);
int equSetLocation(IMSApiSessionContextStruct sessionContext, string stationNumber, string equipmentNo, string equipmentIndex, string location);
int equUpdateEquipment(IMSApiSessionContextStruct sessionContext, string stationNumber, string[] equipmentUpdateKeys, string[] equipmentUpdateValues, out string[] equipmentUpdateResultValues);
int equUpdateEquipmentData(IMSApiSessionContextStruct sessionContext, string stationNumber, int setupFlag, string serialNumber, string workOrderNumber, int processLayer, string[] equipmentUploadKeys, string[] equipmentUploadValues, out string[] equipmentResultValues);
int execFormula(IMSApiSessionContextStruct sessionContext, string stationNumber, KeyValue[] formulaReferences, string[] formulaKeys, string[] formulaValues, string[] parameterKeys, string[] parameterValues, string[] resultKeys, out string[] resultValues, string[] missingParameterKeys, out string[] missingParameterValues);
int execRuleSet(IMSApiSessionContextStruct sessionContext, string stationNumber, int processLayer, string ruleType, string ruleSet, KeyValue[] ruleProperties, out RuleResult[] ruleResults);
int imsapiGetErrorList(IMSApiSessionContextStruct sessionContext, string[] localeArray, string[] groupNameArray, string[] functionNameArray, int[] errorCodes, string[] errorCodeResultKeys, out string[] errorCodeResultValues);
int imsapiGetErrorText(IMSApiSessionContextStruct sessionContext, int errorCode, out string errorString);
int imsapiGetFunctionInfo(IMSApiSessionContextStruct sessionContext, string functionName, out ImsApiFunctionStruct functionInfo, out ImsApiParameterStruct[] parameterArray);
int imsapiGetFunctions(IMSApiSessionContextStruct sessionContext, string groupName, out ImsApiFunctionStruct[] functionArray);
int imsapiGetGroups(IMSApiSessionContextStruct sessionContext, out ImsApiGroupStruct[] groupArray);
int imsapiGetParameterConditions(IMSApiSessionContextStruct sessionContext, string functionName, string parameterName, out string conditionParamName, out ImsApiParamConditionStruct[] parameterConditionArray);
int imsapiGetParameterInfo(IMSApiSessionContextStruct sessionContext, string functionName, string parameterName, string conditionValue, out ImsApiParameterStruct parameter, out ImsApiParamConditionStruct condition, out ImsApiKeyStruct[] keys);
int imsapiGetSystemInfos(IMSApiSessionContextStruct sessionContext, string[] systemInfoResultKeys, out string[] systemInfoResultValues);
int lockGetLockedObjects(IMSApiSessionContextStruct sessionContext, string stationNumber, int objectType, string objectNumber, string objectDetail, string lockGroupName, long lockDateFrom, long lockDateTo, int lockState, int maxRows, string[] objectResultKeys, out string[] objectResultValues);
int lockObjects(IMSApiSessionContextStruct sessionContext, string stationNumber, int objectType, string lockGroupName, string lockInformation, long lockDate, int lockDependencies, string[] objectUploadKeys, string[] objectUploadValues, out string[] objectResultValues);
int lockUnlockObjects(IMSApiSessionContextStruct sessionContext, string stationNumber, int objectType, string lockGroupName, string unlockInformation, int unlockCompleteGroup, long unlockDate, int lockDependencies, string[] objectUploadKeys, string[] objectUploadValues, out string[] objectResultValues);
int mdaActivateRecipe(IMSApiSessionContextStruct sessionContext, string stationNumber, int functionMode, int recipeId, int recipeVersionId);
int mdaCreateRecipe(IMSApiSessionContextStruct sessionContext, string stationNumber, string versionName, string versionDesc, int majorVersionChange, bool activate, long creationDate, int objectType, KeyValue[] recipeFilters, string[] recipeUploadKeys, string[] recipeUploadValues, out string[] recipeResultValues);
int mdaGetDocumentContent(IMSApiSessionContextStruct sessionContext, string stationNumber, long documentId, out byte[] content);
int mdaGetDocuments(IMSApiSessionContextStruct sessionContext, string stationNumber, KeyValue[] attributeFilters, KeyValue[] dataTypeFilters, string[] mdaResultKeys, out string[] mdaResultValues);
int mdaGetRecipeData(IMSApiSessionContextStruct sessionContext, string stationNumber, int recipeVersionId, string function, string functionStep, string measurementName, double sequentialNumber, string type, string measurementType, int objectType, KeyValue[] recipeFilters, string[] recipeResultKeys, out string[] recipeResultValues);
int mdaGetRecipeHeaderAndVersion(IMSApiSessionContextStruct sessionContext, string stationNumber, int objectType, KeyValue[] recipeHeaderFilter, string[] recipeHeaderResultKeys, out string[] recipeHeaderResultValues);
int mdataBomVerify(IMSApiSessionContextStruct sessionContext, string stationNumber, int processLayer, string workOrderNumber, string productNumber, string bareBoardNumber, string bomIndex, string bomInfo, int bomValidFrom, string bomVersionERP, int verifyCompNameBased, int createNewBom, string[] bomUploadKeys, string[] bomUploadValues, out string[] bomResultValues);
int mdataChangeWorkorderData(IMSApiSessionContextStruct sessionContext, string stationNumber, KeyValue[] workorderChangeData);
int mdataCreateWorkorder(IMSApiSessionContextStruct sessionContext, string stationNumber, KeyValue[] workorderUploadKeyValues, string[] workorderResultKeys, out string[] workorderResultValues);
int mdataGetBomData(IMSApiSessionContextStruct sessionContext, string stationNumber, KeyValue[] bomDataFilter, string[] bomDataResultKeys, out string[] bomDataResultValues);
int mdataGetCalendarData(IMSApiSessionContextStruct sessionContext, string stationNumber, string[] calendarDataResultKeys, out string[] calendarDataResultValues);
int mdataGetContactData(IMSApiSessionContextStruct sessionContext, string stationNumber, KeyValue[] contactFilter, string[] contactResultKeys, out string[] contactResultValues, out bool hasMore);
int mdataGetFailureDataForStation(IMSApiSessionContextStruct sessionContext, string stationNumber, int functionMode, string[] failureDataResultKeys, out string[] failureDataResultValues);
int mdataGetMachineAssetStructure(IMSApiSessionContextStruct sessionContext, string stationNumber, KeyValue[] machineAssetStructureFilter, string[] machineAssetStructureResultKeys, out string[] machineAssetStructureValues);
int mdataGetPartData(IMSApiSessionContextStruct sessionContext, string stationNumber, KeyValue[] partFilter, string[] partDataResultKeys, out string[] partDataResultValues);
int mdataGetProductInfo(IMSApiSessionContextStruct sessionContext, string stationNumber, string partNumber, int bomVersion, string bomIndex, int processVersion, int desolvingFlag, int onlyReleased, int onlyValid, string[] productInfoResultKeys, out string[] productInfoResultValues);
int mdataGetProductsForLineOrStation(IMSApiSessionContextStruct sessionContext, string stationNumber, KeyValue[] productForLineOrStationFilter, string[] bomResultKeys, out string[] bomResultValues, string[] workplanResultKeys, out string[] workplanResultValues);
int mdataGetStationConfiguration(IMSApiSessionContextStruct sessionContext, string stationNumber, KeyValue[] stationConfigFilter, string[] stationConfigCodeResultKeys, out string[] stationConfigCodeResultValues, string[] stationParamResultKeys, out string[] stationParamResultValues, string[] stationLicenseResultKeys, out string[] stationLicenseResultValues);
int mdataGetWorkorders(IMSApiSessionContextStruct sessionContext, string stationNumber, KeyValue[] mdataGetWorkordersFilters, string[] mdataGetWorkordersResultKeys, out string[] mdataGetWorkordersResultValues, out bool hasMore);
int mdataGetWorkplanActivities(IMSApiSessionContextStruct sessionContext, string stationNumber, KeyValue[] workplanFilter, string[] workplanDataResultKeys, out string[] workplanDataResultValues, string[] activitiesDataResultKeys, out string[] activitiesDataResultValues, string[] activityParamResultKeys, out string[] activityParamResultValues, string[] deviceDataResultKeys, out string[] deviceDataResultValues);
int mdataGetWorkplanData(IMSApiSessionContextStruct sessionContext, string stationNumber, KeyValue[] workplanFilter, string[] workplanDataResultKeys, out string[] workplanDataResultValues);
int mdataSetProductionCycleTime(IMSApiSessionContextStruct sessionContext, string stationNumber, string serialNumber, string serialNumberPos, string workOrderNumber, int processLayer, double setupCycleTime, double prodCycleTime, string processType, int cycleTimeForMultipleBoard);
int mdaUploadDocument(IMSApiSessionContextStruct sessionContext, string stationNumber, int targetType, KeyValue[] attributeValues, KeyValue[] mdaValues, byte[] content);
int mdcCreateConditionCode(IMSApiSessionContextStruct sessionContext, string stationNumber, string conditionClass, string conditionGroup, string conditionCode, string conditionName, string conditionDesc, string conditionCause, string conditionType, string colorRGB, string[] stationNumbers, string[] lineNumbers);
int mdcCreateLog(IMSApiSessionContextStruct sessionContext, string stationNumber, long startDate, long endDate, string subject, string text, int forLine);
int mdcGetConditionCodes(IMSApiSessionContextStruct sessionContext, string stationNumber, KeyValue[] conditionCodeFilter, string[] conditionCodeResultKeys, out string[] conditionCodeResultValues);
int mdcGetLog(IMSApiSessionContextStruct sessionContext, string stationNumber, long fromDate, long toDate, out MdcLog[] logArray);
int mdcGetRegisteredUser(IMSApiSessionContextStruct sessionContext, string stationNumber, KeyValue[] mdcGetRegisteredUserFilter, string[] mdcGetRegisteredUserKeys, out string[] mdcGetRegisteredUserValues);
int mdcGetStationConditions(IMSApiSessionContextStruct sessionContext, string stationNumber, long fromDate, long toDate, string conditionType, int objectType, string[] conditionResultKeys, out string[] conditionResultValues);
int mdcRegisterUserAtLine(IMSApiSessionContextStruct sessionContext, string stationNumber, string userId, string password, int registrationType, long bookDate);
int mdcUploadStationCondition(IMSApiSessionContextStruct sessionContext, string stationNumber, string[] stationConditionUploadKeys, string[] stationConditionUploadValues, out string[] stationConditionResultValues);
int mlChangeMaterialBinData(IMSApiSessionContextStruct sessionContext, string stationNumber, string materialBinNumber, KeyValue[] materialBinDataUploadValues);
int mlCreateNewMaterialBin(IMSApiSessionContextStruct sessionContext, string stationNumber, string[] materialBinUploadKeys, string[] materialBinUploadValues, out string[] materialBinResultValues);
int mlGetMaterialBinData(IMSApiSessionContextStruct sessionContext, string stationNumber, KeyValue[] materialBinFilters, AttributeInfo[] attributes, string[] materialBinResultKeys, out string[] materialBinResultValues);
int mlGetNextMaterialBinNumber(IMSApiSessionContextStruct sessionContext, string stationNumber, string partNumber, out string materialBinNumber);
int mlGetStorage(IMSApiSessionContextStruct sessionContext, string stationNumber, string storageCellNumber, string storageGroupNumber, string storageNumber, string[] storageResultKeys, out string[] storageResultValues);
int mlSetMaterialBinLocation(IMSApiSessionContextStruct sessionContext, string stationNumber, string materialBinNumber, long bookDate, string binLocation, string binLocationBarcode, int transactionType);
int mlSplitMaterialBin(IMSApiSessionContextStruct sessionContext, string stationNumber, string materialBinNumber, string[] splitMaterialBinKeys, string[] splitMaterialBinUploadValues, string[] splitMaterialBinResultKeys, out string[] splitMaterialBinResultValues);
int mlUploadMaterialBinBooking(IMSApiSessionContextStruct sessionContext, string stationNumber, string[] materialBinBookingUploadKeys, string[] materialBinBookingUploadValues, out string[] materialBinBookingResultValues);
int mslBeginDryObject(IMSApiSessionContextStruct sessionContext, string stationNumber, KeyValue[] mslBeginDryEventParams, string[] mslObjectKeys, string[] mslObjectValues, out string[] mslResultValues);
int mslEndDryObject(IMSApiSessionContextStruct sessionContext, string stationNumber, KeyValue[] mslEventParams, string[] mslObjectKeys, string[] mslObjectValues, out string[] mslResultValues);
int mslGetMinDryTimeForSerialnumber(IMSApiSessionContextStruct sessionContext, string stationNumber, KeyValue[] mslInfoFilters, string[] mslWorstCaseMinDryTimeResultKeys, out string[] mslWorstCaseMinDryTimeResultValues, string[] mslMinDryTimeResultKeys, out string[] mslMinDryTimeResultValues);
int mslGetObjectInfo(IMSApiSessionContextStruct sessionContext, string stationNumber, int objectType, KeyValue[] mslInfoFilters, string[] mslInfoResultKeys, out string[] mslInfoResultValues);
int mslStartObjectExpiration(IMSApiSessionContextStruct sessionContext, string stationNumber, KeyValue[] mslEventParams, string[] mslObjectKeys, string[] mslObjectValues, out string[] mslResultValues);
int mslStopObjectExpiration(IMSApiSessionContextStruct sessionContext, string stationNumber, KeyValue[] mslEventParams, string[] mslObjectKeys, string[] mslObjectValues, out string[] mslResultValues);
int pmGetFailureData(IMSApiSessionContextStruct sessionContext, string stationNumber, KeyValue[] failureDataFilters, string[] failureDataResultKeys, out string[] failureDataResultValues);
int pmGetProductQuantity(IMSApiSessionContextStruct sessionContext, string stationNumber, int processLayer, long dateFrom, long dateTo, int functionMode, KeyValue[] productQuantityFilters, string[] filterDataKeys, string[] filterDataValues, string[] productQuantityResultKeys, out string[] productQuantityResultValues);
int pmUploadQuantityAndFailureData(IMSApiSessionContextStruct sessionContext, string stationNumber, KeyValue[] bookingFailureData, string[] failureDataUploadKeys, string[] failureDataUploadValues, out string[] failureDataUploadResultValues);
int regCheckLicense(IMSApiSessionContextStruct sessionContext, string stationNumber, int licenseType, string[] licenseUploadKeys, string[] licenseUploadValues, out string[] licenseResultValues);
int regGetRegisteredUser(IMSApiSessionContextStruct sessionContext, string stationNumber, out string userName, out string name, out string firstname);
int regLogin(IMSApiSessionValidationStruct sessionValidationStruct, out IMSApiSessionContextStruct sessionContext);
int regLogout(IMSApiSessionContextStruct sessionContext);
int regRegisterUser(IMSApiSessionContextStruct sessionContext, string stationNumber, string userName, string password, string client);
int regUnregisterUser(IMSApiSessionContextStruct sessionContext, string stationNumber, string userName, string password, string client);
int setupChangeSetupForSerialNumber(IMSApiSessionContextStruct sessionContext, string stationNumber, string[] setupChangeSerialKeys, string[] setupChangeSerialValues, string[] setupChangePartKeys, string[] setupChangePartValues, string[] setupChangeResultKeys, out string[] setupChangeResultValues);
int setupCheck(IMSApiSessionContextStruct sessionContext, string stationNumber, string serialNumberRef, string serialNumberRefPos, string workOrderNumber, int processLayer, int checkMode, int resultMode, out string workorderNumber, out string productNumber, out string placementName, out int setupActive, out CheckSetupData[] checkSetupDataArray);
int setupGetMaterialSetup(IMSApiSessionContextStruct sessionContext, string stationNumber, int processLayer, int setupFlag, long setupStartDate, long setupEndDate, string[] setupResultKeys, out string[] setupResultValues, string[] componentResultKeys, out string[] componentResultValues);
int setupGetSetupDataBySerialNumber(IMSApiSessionContextStruct sessionContext, string stationNumber, string serialNumber, string partNumber, string location, int level, string[] setupResultKeys, out string[] setupResultValues);
int setupGetSetupName(IMSApiSessionContextStruct sessionContext, string stationNumber, out string setupName);
int setupGetStationSetupDataForMaterialBin(IMSApiSessionContextStruct sessionContext, string stationNumber, string materialBinNumber, string[] setupResultKeys, out string[] setupResultValues);
int setupReplaceSetupForSerialNumber(IMSApiSessionContextStruct sessionContext, string stationNumber, int processLayer, string serialNumber, int serialNumberPos, string materialNumber, string compName, string materialBinNumberOld, string materialBinNumberNew, long bookDate);
int setupStateChange(IMSApiSessionContextStruct sessionContext, string stationNumber, int processLayer, string workOrderNumber, string serialNumber, int serialNumberPos, int activateFlag);
int setupUpdateMaterialSetup(IMSApiSessionContextStruct sessionContext, string stationNumber, int processLayer, string workOrderNumber, string productNumber, string setupName, string[] materialSetupUploadKeys, string[] materialSetupUploadValues, string[] compPositionsUploadKeys, string[] compPositionsUploadValues, out string[] materialSetupResultValues, out string[] compPositionsResultValues);
int shipActivateShippingLotAtKap(IMSApiSessionContextStruct sessionContext, string stationNumber, string lotNumber);
int shipAddChildLotToParentLot(IMSApiSessionContextStruct sessionContext, string stationNumber, string lotNumberChild, string lotNumberParent, long bookDate);
int shipAddSerialNumberToShippingLot(IMSApiSessionContextStruct sessionContext, string stationNumber, string lotNumber, string serialNumber, int serialNumberPos, long bookDate);
int shipCheckSerialNumberAddToShippingLot(IMSApiSessionContextStruct sessionContext, string stationNumber, string lotNumber, string serialNumber, string serialNumberPos);
int shipCheckSerialNumberFromShippingLot(IMSApiSessionContextStruct sessionContext, string stationNumber, string lotNumber, string serialNumber, string serialNumberPos);
int shipCompleteLot(IMSApiSessionContextStruct sessionContext, string stationNumber, string lotNumber, int allowLessQuantity, long bookDate);
int shipDeactivateShippingLotAtKap(IMSApiSessionContextStruct sessionContext, string stationNumber, string lotNumber);
int shipGetChildLotsForParentLot(IMSApiSessionContextStruct sessionContext, string stationNumber, string lotNumberParent, string[] childLotResultKeys, out string[] childLotResultValues);
int shipGetLotFromSerialNumber(IMSApiSessionContextStruct sessionContext, string stationNumber, string serialNumber, string serialNumberPos, string[] lotResultKeys, out string[] lotResultValues);
int shipGetSerialNumberDataForShippingLot(IMSApiSessionContextStruct sessionContext, string stationNumber, string lotNumber, string[] serialNumberResultKeys, out string[] serialNumberResultValues);
int shipGetShippingLotInfo(IMSApiSessionContextStruct sessionContext, string stationNumber, KeyValue[] shippingLotFilters, string[] shippingLotResultKeys, out string[] shippingLotResultValues);
int shipGetShippingPrefs(IMSApiSessionContextStruct sessionContext, string stationNumber, int objectType, string objectNumber, string objectDetail, int withPackagingRule, string[] shippingPrefsResultKeys, out string[] shippingPrefsResultValues);
int shipMoveChildLots(IMSApiSessionContextStruct sessionContext, string stationNumber, StringStruct[] childLotArray, string actualParentLot, string newParentLot, long bookDate, out ResultData[] resultDataArray);
int shipRemoveChildLots(IMSApiSessionContextStruct sessionContext, string stationNumber, string lotNumberParent, string[] lotNumbersChild, long bookDate, out ResultData[] resultArray);
int shipRemoveSerialNumberFromShippingLot(IMSApiSessionContextStruct sessionContext, string stationNumber, string lotNumber, string serialNumber, string serialNumberPos, long bookDate);
int shipReuseCompletedShippingLot(IMSApiSessionContextStruct sessionContext, string stationNumber, int functionMode, string lotNumber, string[] shippingLotResultKeys, out string[] shippingLotResultValues);
int shipSendLot(IMSApiSessionContextStruct sessionContext, string stationNumber, string lotNumber, long bookDate, KeyValue[] shippingLotSendValues);
int smtCheckMaterialBin(IMSApiSessionContextStruct sessionContext, string stationNumber, string[] materialBinUploadKeys, string[] materialBinUploadValues, out string[] materialBinResultValues);
int smtConsumption(IMSApiSessionContextStruct sessionContext, string stationNumber, int processLayer, string lineName, string setupName, string productName, string bomVersion, string placementRecipe, bool assignSerialNumbers, bool bookSerialNumbers, bool activateSetup, ref SmtSerialNo[] serialNumbers, ref SmtEvent[] events, ref SmtPlacement[] placements, bool ignoreContainerProblems, bool createWorkOrder, bool activateWorkOrder, string workOrderNumber, double cycleTime);
int smtEventSetup(IMSApiSessionContextStruct sessionContext, string stationNumber, int processLayer, string lineName, string setupName, string productName, string bomVersion, string placementRecipe, bool assignSerialNumbers, bool bookSerialNumbers, bool activateSetup, ref SmtSerialNo[] serialNumbers, ref SmtEvent[] events, ref SmtPlacement[] placements, bool ignoreContainerProblems, bool createWorkOrder, bool activateWorkOrder, string workOrderNumber, double cycleTime);
int smtSerialNumberCheckIn(IMSApiSessionContextStruct sessionContext, string stationNumber, string[] serialNoCheckUploadKeys, string[] serialNoCheckUploadValues, out string[] serialNoCheckResultValues, string[] logInfoUploadKeys, string[] logInfoUploadValues, out string[] logInfoResultValues, string[] serialNumberStateResultKeys, out string[] serialNumberStateResultValues, string[] recipeResultKeys, out string[] recipeResultValues);
int smtSerialNumberSetup(IMSApiSessionContextStruct sessionContext, string stationNumber, int processLayer, string lineName, string setupName, string productName, string bomVersion, string placementRecipe, bool assignSerialNumbers, bool bookSerialNumbers, bool activateSetup, ref SmtSerialNo[] serialNumbers, ref SmtEvent[] events, ref SmtPlacement[] placements, bool ignoreContainerProblems, bool createWorkOrder, bool activateWorkOrder, string workOrderNumber, double cycleTime);
int smtSetupData(IMSApiSessionContextStruct sessionContext, string stationNumber, int functionMode, string[] smtSetupHeaderKeys, string[] smtSetupHeaderValues, out string[] smtSetupHeaderResultValues, string[] smtSerialNumberKeys, string[] smtSerialNumberValues, out string[] smtSerialNumberResultValues, string[] smtEventKeys, string[] smtEventValues, out string[] smtEventResultValues, string[] smtPlacementKeys, string[] smtPlacementValues);
int trActivateWorkOrder(IMSApiSessionContextStruct sessionContext, string stationNumber, string workOrderNumber, string serialNumber, string serialNumberPos, int processLayer, int flag);
int trAddSerialNumberToPool(IMSApiSessionContextStruct sessionContext, string stationNumber, string serialNumberPoolName, string[] serialNumberPoolKeys, string[] serialNumberPoolValues, out string[] serialNumberPoolResults);
int trAddSerialNumberToSerialNumberPool(IMSApiSessionContextStruct sessionContext, string stationNumber, string serialNumber, string serialNumberPos, string serialNumberPoolName, out int state, out string partNumber, out string workOrderNumber);
int trAssignSerialNumberForProductOrWorkOrder(IMSApiSessionContextStruct sessionContext, string stationNumber, string workOrderNumber, string partNumber, string bomVersion, string serialNumberRef, string serialNumberRefPos, int processLayer, SerialNumberData[] serialNumberArray, int activateWorkOrder);
int trAssignSerialNumberMergeAndUploadState(IMSApiSessionContextStruct sessionContext, string stationNumber, int processLayer, string serialNumberRef, string serialNumberRefPos, SerialNumberData[] serialNumberArray, string serialNumberSlave, int doUploadState, int serialNumberState, int multiplePanel);
int trChangePoolSerialNumber(IMSApiSessionContextStruct sessionContext, string stationNumber, string serialNumberPoolName, string[] poolSerialNumberKeys, string[] poolSerialNumberValues, out string[] poolSerialNumberResults);
int trChangeSerialNumberPool(IMSApiSessionContextStruct sessionContext, string stationNumber, string serialNumberPoolName, KeyValue[] serialNumberPoolData);
int trChangeWorkOrder(IMSApiSessionContextStruct sessionContext, string stationNumber, int lineFlag, string[] workorderResultKeys, out string[] workorderResultValues);
int trCheckMergedPartsForSerialNumberComplete(IMSApiSessionContextStruct sessionContext, string stationNumber, string serialNumber, int serialNumberPos, int allMergedPartsVisible, int checkMultipleBoard, string[] mergePartsResultKeys, out string[] mergePartsResultValues);
int trCheckSerialNumberState(IMSApiSessionContextStruct sessionContext, string stationNumber, int processLayer, int checkMultiBoard, string serialNumber, string serialNumberPos, string[] serialNumberStateResultKeys, out string[] serialNumberStateResultValues);
int trCheckUserSkill(IMSApiSessionContextStruct sessionContext, string stationNumber, int processLayer, string userId, KeyValue[] checkUserSkillFilter);
int trCreateSerialNumberPool(IMSApiSessionContextStruct sessionContext, string stationNumber, string serialNumberPoolName, string serialNumberPoolDesc, string changeOrderNumber, string infoTxt, int serialNumberPoolType);
int trDeleteSerialNumberPool(IMSApiSessionContextStruct sessionContext, string stationNumber, string serialNumberPoolName);
int trGetCapturedRepairHistoryData(IMSApiSessionContextStruct sessionContext, string stationNumber, int processLayer, KeyValue[] repairHistoryFilter, string[] failureDataResultKey, string[] failureSlipDataResultKey, out string[] failureDataResultValues, out string[] failureSlipDataResultValues);
int trGetMergeHistory(IMSApiSessionContextStruct sessionContext, string stationNumber, KeyValue[] mergedHistoryFilters, string[] mergedHistoryResultKeys, out string[] mergedHistoryResultValues);
int trGetMergeParts(IMSApiSessionContextStruct sessionContext, string stationNumber, string serialNumber, string serialNumberPos, int resolveDirection, int resolveLevel, string[] mergePartsResultKeys, out string[] mergePartsResultValues);
int trGetNextProductionStep(IMSApiSessionContextStruct sessionContext, string stationNumber, string serialNumber, string serialNumberPos, int functionMode, int stateCheck, int confirmFlag, string[] productionStepResultKeys, out string[] productionStepResultValues);
int trGetNextSerialNumber(IMSApiSessionContextStruct sessionContext, string stationNumber, string workOrderNumber, string partNumber, int numberOfRecords, out SerialNumberData[] serialNumberArray);
int trGetPools(IMSApiSessionContextStruct sessionContext, string stationNumber, string serialNumberPoolName, string changeOrder, int snrPoolState, string[] serialNumberPoolResultKeys, out string[] serialNumberPoolResultValues);
int trGetPoolSerialNumber(IMSApiSessionContextStruct sessionContext, string stationNumber, string serialNumberPoolName, string serialNumber, string serialNumberPos, int startPosition, int maxRowCount, int processingStateFlag, int snrStateFlag, string[] poolSerialNumberResultKeys, out string[] poolSerialNumberResultValues, out bool hasMore, out string outSerialNumberPoolName);
int trGetProductQuantity(IMSApiSessionContextStruct sessionContext, string stationNumber, int processLayer, int functionMode, KeyValue[] workorderFilters, KeyValue[] filterDataArray, string[] productQuantityResultKeys, out string[] productQuantityResultValues);
int trGetResultDataForSerialNumber(IMSApiSessionContextStruct sessionContext, string stationNumber, int processLayer, string serialNumber, int serialNumberPos, string type, string name, int allProductEntries, int onlyLastEntry, KeyValue[] resultDataFilters, string[] resultDataKeys, out string[] resultDataValues);
int trGetSerialNumberActivityUploadInfo(IMSApiSessionContextStruct sessionContext, string stationNumber, string serialNumberRef, string serialNumberRefPos, KeyValue[] activityFilter, string[] activityDataResultKeys, out string[] activityDataResultValues);
int trGetSerialNumberBySerialNumberRef(IMSApiSessionContextStruct sessionContext, string stationNumber, string serialNumberRef, string serialNumberRefPos, out SerialNumberData[] serialNumberArray);
int trGetSerialNumberForWorkOrderAndWorkstep(IMSApiSessionContextStruct sessionContext, string stationNumber, int processLayer, string workOrderNumber, int sequenceType, int workstepNumber, int multiplePanel, int state, int maxRows, int confirmFlag, int sortFlag, string[] serialNumberResultKeys, out string[] serialNumberResultValues);
int trGetSerialNumberHistoryData(IMSApiSessionContextStruct sessionContext, string stationNumber, string serialNumber, string serialNumberPos, int processLayer, int desolvingSerialNumber, int desolvingLevel, string[] bookingResultKeys, out string[] bookingResultValues, string[] failureDataResultKeys, out string[] failureDataResultValues, string[] failureSlipDataResultKeys, out string[] failureSlipDataResultValues, string[] measureDataResultKeys, out string[] measureDataResultValues, out string workOrderNumber, out string partNumber, out string customerPartNumber, out string partDesc, out string quantity, out long lastReportDate, out string lotNumber, out int isLocked);
int trGetSerialNumberInfo(IMSApiSessionContextStruct sessionContext, string stationNumber, string serialNumber, string serialNumberPos, string[] serialNumberResultKeys, out string[] serialNumberResultValues);
int trGetSerialNumberPoolInfo(IMSApiSessionContextStruct sessionContext, string stationNumber, string serialNumberPoolName, int workOrderInfo, string[] poolInfoResultKeys, out string[] poolInfoResultValues, out string changeOrder, out string partNumber, out string erpBomIndex, out string infoTxtChangeOrder, out string infoTxtSnrPool, out int qtyAssignedSerialNumbers, out int qtyIdentifiedSerialNumbers, out int qtyCOAssignedSerialNumbers, out int snrPoolState, out string snrPoolDescription);
int trGetSerialNumberUploadInfo(IMSApiSessionContextStruct sessionContext, string stationNumber, int processLayer, string serialNumber, string serialNumberPos, int checkProcessStep, string[] uploadInfoResultKeys, out string[] uploadInfoResultValues);
int trGetStationResult(IMSApiSessionContextStruct sessionContext, string stationNumber, string workorderNumber, string partNumber, int bomVersion, string bomIndex, string bomVersionErp, long fromDate, long toDate, string[] measurementNames, int functionMode, string[] stationResultKeys, out string[] stationResultValues);
int trGetStationSetting(IMSApiSessionContextStruct sessionContext, string stationNumber, string[] stationSettingResultKeys, out string[] stationSettingResultValues);
int trGetTestplanData(IMSApiSessionContextStruct sessionContext, string stationNumber, string serialNumber, string serialNumberPos, int processLayer, string workorderNumber, KeyValue[] testplanFilters, string[] varParamResultKeys, out string[] varParamResultValues, string[] varFailCodeResultKeys, out string[] varFailCodeResultValues, string[] attribParamResultKeys, out string[] attribParamResultValues, string[] attribParamValueResultKeys, out string[] attribParamValueResultValues, string[] attribFailCodeResultKeys, out string[] attribFailCodeResultValues);
int trGetTopFailures(IMSApiSessionContextStruct sessionContext, string stationNumber, KeyValue[] trGetTopFailuresFilter, string[] topFailuresResultKeys, out string[] topFailuresResultValues);
int trGetWorkOrderForStation(IMSApiSessionContextStruct sessionContext, string stationNumber, KeyValue[] workorderFilter, string[] workorderResultKeys, out string[] workorderResultValues);
int trIdentifyPoolSerialNumber(IMSApiSessionContextStruct sessionContext, string stationNumber, string serialNumber, string serialNumberPos, string serialNumberPoolName);
int trMergeParts(IMSApiSessionContextStruct sessionContext, string stationNumber, int processLayer, int duplicateSerialNumber, string serialNumberMaster, string serialNumberMasterPos, string serialNumberSlave, string serialNumberSlavePos);
int trRemoveMergeParts(IMSApiSessionContextStruct sessionContext, string stationNumber, int processLayer, string serialNumberSlave, string serialNumberSlavePos, string textInfo);
int trRemoveSerialNumberFromSerialNumberPool(IMSApiSessionContextStruct sessionContext, string stationNumber, string serialNumber, string serialNumberPos, string serialNumberPoolName);
int trSimulateMerge(IMSApiSessionContextStruct sessionContext, string stationNumber, string serialNumberMaster, string serialNumberMasterPos, string workorderNumberMaster, string serialNumberSlave, string serialNumberSlavePos, string workorderNumberSlave, string[] simulateMergeResultKeys, out string[] simulateMergeResultValues);
int trSplitPanel(IMSApiSessionContextStruct sessionContext, string stationNumber, string serialNumberRef, string serialNumberRefPos, int functionMode, string[] splitPanelKeys, string[] splitPanelValues, out string[] splitPanelResults);
int trSwitchSerialNumber(IMSApiSessionContextStruct sessionContext, string stationNumber, string serialNumberRef, string serialNumberRefPos, ref SwitchSerialNumberData[] serialNumberArray);
int trTestPaa(IMSApiSessionContextStruct sessionContext, string stationNumber, string serialNumber, int processLayer, int model, out int resultPaa, out string infoText);
int trTestSpa(IMSApiSessionContextStruct sessionContext, string stationNumber, string serialNumber, int processLayer, int model, out int resultCp, out int resultCpk, out string infoText);
int trUploadActivity(IMSApiSessionContextStruct sessionContext, string stationNumber, int processLayer, string serialNumberRef, string serialNumberRefPos, int serialNumberState, int duplicateSerialNumber, long bookDate, float cycleTime, string[] activityDataKeys, string[] activityDataValues, out string[] activityDataResults);
int trUploadFailureAndResultData(IMSApiSessionContextStruct sessionContext, string stationNumber, int processLayer, string serialNumberRef, string serialNumberRefPos, int serialNumberState, int duplicateSerialNumber, float cycleTime, long bookDate, string[] measureKeys, string[] measureValues, out string[] measureResultValues, string[] failureKeys, string[] failureValues, out string[] failureResultValues, string[] failureSlipKeys, string[] failureSlipValues, out string[] failureSlipResultValues);
int trUploadFailuresForMergedParts(IMSApiSessionContextStruct sessionContext, string stationNumber, KeyValue[] uploadMasterSerialNumberKeys, string[] uploadSlaveSerialNumberKeys, string[] uploadSlaveSerialNumberValues, out string[] uploadSlaveSerialNumberResults, string[] uploadFailuresForSlaveSerialNumberKeys, string[] uploadFailuresForSlaveSerialNumberValues, out string[] uploadFailuresForSlaveSerialNumberResults);
int trUploadPmQuantity(IMSApiSessionContextStruct sessionContext, string stationNumber, int processLayer, string workOrderNumber, double passQty, double failQty, double scrapQty);
int trUploadResultDataAndRecipe(IMSApiSessionContextStruct sessionContext, string stationNumber, int processLayer, int recipeVersionId, string serialNumberRef, string serialNumberRefPos, int serialNumberState, int duplicateSerialNumber, long bookDate, float cycleTime, int recipeVersionMode, string[] resultUploadKeys, string[] resultUploadValues, out string[] resultValues);
int trUploadState(IMSApiSessionContextStruct sessionContext, string stationNumber, int processLayer, string serialNumberRef, string serialNumberRefPos, int serialNumberState, int duplicateSerialNumber, long bookDate, float cycleTime, string[] serialNumberUploadKeys, string[] serialNumberUploadValues, out string[] serialNumberResultValues);
int trUploadStationResult(IMSApiSessionContextStruct sessionContext, string stationNumber, string partNumber, int bomVersion, string bomIndex, string bomVersionErp, string workOrderNumber, long bookDate, int serialUnitTrace, string[] stationResultUploadKeys, string[] stationResultUploadValues, out string[] stationResultValues);
int trUploadTestplanResult(IMSApiSessionContextStruct sessionContext, string stationNumber, string serialNumber, string serialNumberPos, long bookDate, string[] workStepKeys, string[] workStepValues, out string[] workStepResults, string[] varUploadKeys, string[] varUploadValues, out string[] varUploadResults, string[] varFailUploadKeys, string[] varFailUploadValues, out string[] varFailUploadResults, string[] attribUploadKeys, string[] attribUploadValues, out string[] attribUploadResult, string[] attribFailUploadKeys, string[] attribFailUploadValues, out string[] attribFailUploadResults);
int trVerifyMerge(IMSApiSessionContextStruct sessionContext, string stationNumber, string serialNumberSlave, string serialNumberSlavePos, string serialNumberMaster, string serialNumberMasterPos, int checkMultiBoard, out SerialNumberStateData[] serialNumberStateDataArray);
int trVerifyMergeProduct(IMSApiSessionContextStruct sessionContext, string stationNumber, string partNumber, int bomVersion, string bomIndex, string serialNumberSlave, int level);
}
}