TransferSlipQuery

Returns the transfer slips specified in the filter criteria. For Multi-Store versions of QBPOS only.


Request

Response

XMLOPS

VB.NET

C#

Tag Type Max length Implementation Required

ITransferSlipQuery

Returns the transfer slips specified in the filter criteria. For Multi-Store versions of QBPOS only.
       

metaData

This is used in a query to cause a count of query objects to be returned. You can specify that the count of query objects is to be returned with the returned objects, or you can specify that only a count and no data is returned. (The default is that no count is returned.) A common use of this feature is to specify a count with no data in order to determine how many objects to expect from the actual query. If you don’t want a query to return a count, either don’t use this feature, or specify the value NoMetaData. If you want only a count, specify the value MetaDataOnly. If you want data and a count, specify MetaDataAndResponseData. You should be aware that the count returned via this setting is not guaranteed to be exact: it could be off slightly due to new object creation or deletions.
IQBENmetaDataType   4.0|us.png|  

iterator

The iterator attribute provided with most query types also allows you to break down query results in smaller and more manageable chunks of data. An iterator results in responses that contain only the specified number of objects. Iterators are only valid for the application that starts them, and they are only valid for the current QuickBooks session.
IQBENiteratorType   5.0|us.png|  

iteratorID

The iterator query attribute is provided with most query types to allow you to break down query results into smaller and more manageable chunks of data. An iterator results in responses that contain only the specified number of objects. The iterator is created when a query contains the iterator attribute set to Start, along with a MaxReturn value specifying how many records are to be returned in each iteration. The response to that first query iteration contains, along with the response data, an IteratorID value that uniquely identifies that iterator. This is important because you can have many iterators active at the same time. Accordingly, in subsequent iterations of that query, you need to supply that returned iteratorID so the SDK knows where to resume the iteration.
IQBUUIDType   5.0|us.png|  

MaxReturned

This element is used for limiting the number of objects returned in the query to the number specified in MaxReturned. It is required if you use the Iterator attribute to iterate through large or potentially large query returns. When used with the Iterator, MaxReturned specifies the number of records returned in each iteration. It can be modified during the iteration. For details on the Iterator, please refer to the QBPOS SDK Programming Guide. A less optimal, but still possible way to use this element is as follows. You can use this element by itself to chunk up data, by initially using a range filter with the desired starting (From range) and ending range (To range). Then, in subsequent queries, leave the To range alone, but change the From range to coincide with the last object from the previous query.
IQBIntType      

OwnerIDList

The list of Owner IDs in the requests. An ownerID refers to the owner of a data extension:If OwnerID is 0, this is a public data extension. For example, if you intend to use this with a custom field that is supported in the UI, you must use an owner ID of 0.If OwnerID is a GUID, for example {6B063959-81B0-4622-85D6-F548C8CCB517}, this field is a private data extension defined by an integrated application. Note that OwnerID values are not case-sensitive, meaning that if you enter an OwnerID value with lower-case letters, the value will be saved and returned with upper-case letters. When you share a private data extension with another application, the other application must know both the OwnerID and the DataExtName, as these together form a data extension’s unique name.
IGUIDList      

TxnID

QuickBooks generates a unique TxnID for each transaction that is added to QuickBooks. A TxnID returned from a request can be used to refer to the transaction in subsequent requests. Notice that you cannot supply the TxnID of a TimeTracking transaction to TransactionQueryRq requests. If you do, you get an error stating that no such record could be found, even though the transaction is in QuickBooks. This behavior reflects the behavior in the QuicKBooks UI in the Find window.
IQBIDType      

ORTimeCreatedFilters

IORTimeCreatedFilters   1.1  

TimeCreatedFilter

Filters by the object’s time created value.
ITimeCreatedFilter      

MatchNumericCriterion

Specifies how the specified numeric value will filter the target objects, that is, specifies the the comparison that will be used.
IQBENMatchNumericCriterionType     Y

TimeCreated

The timestamp indicating the time when this object was created in QBPOS.
IQBDateTimeType     Y

TimeCreatedRangeFilter

Filters by a range of time created values.
ITimeCreatedRangeFilter      

FromTimeCreated

The beginning of the range.
IQBDateTimeType     Y

ToTimeCreated

The end of the range.
IQBDateTimeType     Y

ORTimeModifiedFilters

IORTimeModifiedFilters      

TimeModifiedFilter

Searches for objects that were modified before, at, or after the specified time.
ITimeModifiedFilter      

MatchNumericCriterion

Specifies how the specified numeric value will filter the target objects, that is, specifies the the comparison that will be used.
IQBENMatchNumericCriterionType     Y

TimeModified

The time when the object was modified by QBPOS.
IQBDateTimeType     Y

TimeModifiedRangeFilter

Searches for objects that were modified within the specified time range.
ITimeModifiedRangeFilter      

FromTimeModified

First time value possible in the range.
IQBDateTimeType     Y

ToTimeModified

Last time value of the range.
IQBDateTimeType     Y

ORAssociateFilters

IORAssociateFilters      

AssociateFilter

Filters by the specified associate name string or substring.
IAssociateFilter      

MatchStringCriterion

This specifies which part of the string is being looked at.
IQBENMatchStringCriterionType     Y

Associate

The employee making the adjustment transaction.
IQBStringType 40 chars   Y

AssociateRangeFilter

Filters by the specified range of name values.
IAssociateRangeFilter      

FromAssociate

Starting value in the range filter.
IQBStringType 40 chars   Y

ToAssociate

Ending value in the specified range.
IQBStringType 40 chars   Y

ORCarrierFilters

IORCarrierFilters      

CarrierFilter

Filters transfers by their Carrier field value.
ICarrierFilter      

MatchStringCriterion

This specifies which part of the string is being looked at.
IQBENMatchStringCriterionType     Y

Carrier

Shipping company used to transfer the merchandise.
IQBStringType 15 chars   Y

CarrierRangeFilter

Filters transfer slips by a range of Carrier field values.
ICarrierRangeFilter      

FromCarrier

Start of the range.
IQBStringType 15 chars   Y

ToCarrier

End of the range.
IQBStringType 15 chars   Y

ORCommentsFilters

IORCommentsFilters      

CommentsFilter

Filters adjustments by the comments field using the specified string or substring.
ICommentsFilter      

MatchStringCriterion

This specifies which part of the string is being looked at.
IQBENMatchStringCriterionType     Y

Comments

The Comment field contains a description of the transaction, for example, why a memo was issued, or why cash was paid out (receipt).
IQBStringType 300 chars   Y

CommentsRangeFilter

Filters by the specified range of comments.
ICommentsRangeFilter      

FromComments

Specifies the beginning of the range in the filter.
IQBStringType 300 chars   Y

ToComments

Specifies the end of the range in the filter.
IQBStringType 300 chars   Y

ORFreightFilters

IORFreightFilters      

FreightFilter

Filters transfer slips by their freight values.
IFreightFilter      

MatchNumericCriterion

Specifies how the specified numeric value will filter the target objects, that is, specifies the the comparison that will be used.
IQBENMatchNumericCriterionType     Y

Freight

Price charged by the shipping carrier to move the merchandise between the stores involved in the transaction. You can use this field to record freight charges associated with the transfer to provide a record of these charges to compare to a freight bill later.
IQBAmountType     Y

FreightRangeFilter

Filters transfer slips by a range of freight values.
IFreightRangeFilter      

FromFreight

Start of the range of Freight values.
IQBAmountType     Y

ToFreight

End of the range of Freight values.
IQBAmountType     Y

ORFromStoreNumberFilters

IORFromStoreNumberFilters      

FromStoreNumberFilter

Filters by the FromStore value in the transaction.
IFromStoreNumberFilter      

MatchNumericCriterion

Specifies how the specified numeric value will filter the target objects, that is, specifies the the comparison that will be used.
IQBENMatchNumericCriterionType     Y

FromStoreNumber

Available for multi-store versions of QBPOS. Specifies the starting value of the Store Number range. Only memos whose Store Number value is at this value level or higher will be returned in the query.
IQBIntType     Y

FromStoreNumberRangeFilter

Filters by a range of FromStore values.
IFromStoreNumberRangeFilter      

FromFromStoreNumber

Beginning of the range.
IQBIntType     Y

ToFromStoreNumber

End of the range.
IQBIntType     Y

HistoryDocStatus

Indicates the current status of the cost memo created as a result of this request. Status of reversed means that this was an original memo that had to be corrected. Status of reversing means that this memo caused an older memo to be reversed. Status of regular means that the document has been corrected.
IQBENHistoryDocStatusType      

ORItemsCountFilters

IORItemsCountFilters      

ItemsCountFilter

Filters adjustments by those with a specified number of line items.
IItemsCountFilter      

MatchNumericCriterion

Specifies how the specified numeric value will filter the target objects, that is, specifies the the comparison that will be used.
IQBENMatchNumericCriterionType     Y

ItemsCount

The number of line items in the adjustment add request that added the adjustment to QBPOS.
IQBIntType     Y

ItemsCountRangeFilter

Specifies a range of adjustment line items to search for.
IItemsCountRangeFilter      

FromItemsCount

Specifies the start of the range.
IQBIntType     Y

ToItemsCount

Specifies the end of the range.
IQBIntType     Y

QuickBooksFlag

This element is used only if QBPOS is being used with QuickBooks Financial Software. The value here displays the status of data export for a memo: NOT POSTED (not yet sent to QuickBooks), COMPLETE (sent to QuickBooks), or ERROR (attempting to send the memo to QuickBooks resulted in an error). Values: NotPosted, Completed, Error, UnbilledPurchases No default value.
IQBENQuickBooksFlagType      

ORSlipETAFilters

IORSlipETAFilters      

SlipETAFilter

Filters transfer slips by their ETA value.
ISlipETAFilter      

MatchNumericCriterion

Specifies how the specified numeric value will filter the target objects, that is, specifies the the comparison that will be used.
IQBENMatchNumericCriterionType     Y

SlipETA

Estimated time of arrival of the merchandise at the destination store (To Store).
IQBDateType     Y

SlipETARangeFilter

Filters transfer slips by a range of ETA values.
ISlipETARangeFilter      

FromSlipETA

Start of the range.
IQBDateType     Y

ToSlipETA

End of the range.
IQBDateType     Y

ORSlipNumberFilters

IORSlipNumberFilters      

SlipNumberFilter

Filters transfer slips by their slip number.
ISlipNumberFilter      

MatchNumericCriterion

Specifies how the specified numeric value will filter the target objects, that is, specifies the the comparison that will be used.
IQBENMatchNumericCriterionType     Y

SlipNumber

This is a unique number automatically assigned to the transfer slip at creation time by QBPOS.
IQBIntType     Y

SlipNumberRangeFilter

Filters transfer slips by a range of slip numbers.
ISlipNumberRangeFilter      

FromSlipNumber

Start of the range.
IQBIntType     Y

ToSlipNumber

End of the range.
IQBIntType     Y

StoreExchangeStatus

In multi store configurations, if the customer’s information has changed, this information is updated at the headquarters store. This response field indicates whether the information was successfully updated or not.
IQBENStoreExchangeStatusType      

ORToStoreNumberFilters

IORToStoreNumberFilters      

ToStoreNumberFilter

Filters transactions by the ToStore value.
IToStoreNumberFilter      

MatchNumericCriterion

Specifies how the specified numeric value will filter the target objects, that is, specifies the the comparison that will be used.
IQBENMatchNumericCriterionType     Y

ToStoreNumber

Specifies the ending value of the Store Number range. Only memos whose Store Number value falls between the FromStoreNumber value and this value will be returned in the query.
IQBIntType     Y

ToStoreNumberRangeFilter

Filters transactions by a range of ToStore values.
IToStoreNumberRangeFilter      

FromToStoreNumber

Beginning of the range.
IQBIntType     Y

ToToStoreNumber

End of the range.
IQBIntType     Y

ORTotalCostFilters

IORTotalCostFilters      

TotalCostFilter

Filters transfer slips by their total cost field value.
ITotalCostFilter      

MatchNumericCriterion

Specifies how the specified numeric value will filter the target objects, that is, specifies the the comparison that will be used.
IQBENMatchNumericCriterionType     Y

TotalCost

The sum of the listed item’s extended costs. Note: Individual item extended costs are not displayed on the slip.
IQBAmountType     Y

TotalCostRangeFilter

Filters transfer slips by a range of total cost values.
ITotalCostRangeFilter      

FromTotalCost

Start of the range.
IQBAmountType     Y

ToTotalCost

End of the range.
IQBAmountType     Y

ORTotalQtyFilters

IORTotalQtyFilters      

TotalQtyFilter

Filters transfer slips by their TotalQty value.
ITotalQtyFilter      

MatchNumericCriterion

Specifies how the specified numeric value will filter the target objects, that is, specifies the the comparison that will be used.
IQBENMatchNumericCriterionType     Y

TotalQty

Total quantity of items being transferred.
IQBQuanType     Y

TotalQtyRangeFilter

Filters transfer slips by a range of TotalQty values.
ITotalQtyRangeFilter      

FromTotalQty

Start of the range of TotalQty values.
IQBQuanType     Y

ToTotalQty

End of the range of TotalQty values.
IQBQuanType     Y

ORTxnDateFilters

IORTxnDateFilters      

TxnDateFilter

The ITxnDateFilter group object allows you to filter by transaction creation date.
ITxnDateFilter      

MatchNumericCriterion

Specifies how the specified numeric value will filter the target objects, that is, specifies the the comparison that will be used.
IQBENMatchNumericCriterionType     Y

TxnDate

The date of the transaction. In some cases, if you leave TxnDate out of an -Add message, QuickBooks will prefill TxnDate with the date of the last-saved transaction of the same type.
IQBDateType     Y

TxnDateRangeFilter

Filters according to the original transaction dates.
ITxnDateRangeFilter      

FromTxnDate

Selects transactions created on or after this date. Both FromTxnDate and ToTxnDate must be between 01/01/1901 and 12/31/9999.If you omit FromTxnDate, it will be set to 1970-01-01 (1969-12-31 PST).
IQBDateType     Y

ToTxnDate

Selects transactions created on or before this date. Both ToTxnDate and FromTxnDate must be between 01/01/1901 and 12/31/9999. If you omit ToTxnDate, it will be set to 2038-01-19 (2038-01-18 PST).
IQBDateType     Y

TxnState

Indicates whether the transaction is complete (Normal) or is a “held document” (Held) which means it is not yet finalized. For example, a saved draft pending while awaiting some work or decision.
IQBENTxnStateType   1.1  

ORWorkstationFilters

IORWorkstationFilters      

WorkstationFilter

Retrieves adjustments by the workstation they originated from.
IWorkstationFilter      

MatchNumericCriterion

Specifies how the specified numeric value will filter the target objects, that is, specifies the the comparison that will be used.
IQBENMatchNumericCriterionType     Y

Workstation

Workstation from which the transaction was made.
IQBIntType     Y

WorkstationRangeFilter

Retrieves adjustments from the specified range of workstations.
IWorkstationRangeFilter      

FromWorkstation

Beginning of the range to search.
IQBIntType     Y

ToWorkstation

End of the range to search.
IQBIntType     Y

IncludeRetElementList

You can use the IncludeRetElement feature to restrict the data returned in the response to the specified qbposXML field here. If you do this, only those elements specified will be returned. To use this feature, you simply add the qbposXML element name to the IncludeRetElementList. The following example shows how to do this, specifying that only the CreatedBy and ClockOutTime elements are to be returned in the TimeEntryAdd response: Dim MyTimeEntry As ITimeEntryAdd Set MyTimeEntry = requestMsgSet.AppendTimeEntryAddRq MyTimeEntry.IncludeRetElementList.Add “CreatedBy” MyTimeEntry.IncludeRetElementList.Add “ClockOutTime” ‘ set the other properties as desired…
IBSTRList 50 chars 2.0  
Tag Type Max length Implementation Required

IResponse

Returns the transfer slips specified in the filter criteria. For Multi-Store versions of QBPOS only.
       

StatusCode

A number that corresponds to a statusSeverity and statusMessage. Five status codes relate directly to signon messages: 2000, 2010, 2020, 2030, and 2040. For details about these and other statusCode values that can be returned, see the statusCode table on the Error Codes page.
IQBIntType     Y

StatusSeverity

One of the following values: INFO The request was completed, and the results are consistent with what your application expected. WARNING The request was completed, but the results might not be consistent with what you expected. ERROR The request was not completed. No data will appear in the server’s response after the statusMessage.
IQBStringType     Y

StatusMessage

A user-readable explanation of the success or error condition that is indicated by the statusCode. For details about the statusMessage values that can be returned, see the “Explanation” column of the statusCode table on the Error Codes page.
IQBStringType     Y

retCount

The retCount is returned in a query if in the query request you specified the metaData attribute with a value of MetaDataOnly (in which case the retCount is the only data returned in the query response) or MetaDataAndResponseData (the query response contains object data AND the approximate count). The retCount value contains the approximate count of the objects that could be expected to be returned from the query. A common use of this feature is to specify a count with no data in order to determine how many objects to expect from the actual query. You should be aware that the count returned in retCount is not guaranteed to be exact: it could be off slightly due to new object creation or deletions.
IQBIntType   4.0|us.png| Y

iteratorRemainingCount

This attribute is provided in the response in a query using iterators, indicating the number of objects remaining in the iteration. This can help you specify a MaxReturn value tailored to the number of objects still to be iterated through in your query.
IQBIntType   5.0|us.png| Y

iteratorID

The iterator query attribute is provided with most query types to allow you to break down query results into smaller and more manageable chunks of data. An iterator results in responses that contain only the specified number of objects. The iterator is created when a query contains the iterator attribute set to Start, along with a MaxReturn value specifying how many records are to be returned in each iteration. The response to that first query iteration contains, along with the response data, an IteratorID value that uniquely identifies that iterator. This is important because you can have many iterators active at the same time. Accordingly, in subsequent iterations of that query, you need to supply that returned iteratorID so the SDK knows where to resume the iteration.
IQBUUIDType   5.0|us.png| Y

Detail

ITransferSlipRetList      

(List of ITransferSlipRet Objects)

       

TxnID

QuickBooks generates a unique TxnID for each transaction that is added to QuickBooks. A TxnID returned from a request can be used to refer to the transaction in subsequent requests. Notice that you cannot supply the TxnID of a TimeTracking transaction to TransactionQueryRq requests. If you do, you get an error stating that no such record could be found, even though the transaction is in QuickBooks. This behavior reflects the behavior in the QuicKBooks UI in the Find window.
IQBIDType      

TimeCreated

The timestamp indicating the time when this object was created in QBPOS.
IQBDateTimeType   1.1  

TimeModified

The time when the object was modified by QBPOS.
IQBDateTimeType      

Associate

The employee making the adjustment transaction.
IQBStringType 40 chars    

Carrier

Shipping company used to transfer the merchandise.
IQBStringType 15 chars    

Comments

The Comment field contains a description of the transaction, for example, why a memo was issued, or why cash was paid out (receipt).
IQBStringType 2000 chars    

Freight

Price charged by the shipping carrier to move the merchandise between the stores involved in the transaction. You can use this field to record freight charges associated with the transfer to provide a record of these charges to compare to a freight bill later.
IQBAmountType      

FromStoreNumber

Available for multi-store versions of QBPOS. Specifies the starting value of the Store Number range. Only memos whose Store Number value is at this value level or higher will be returned in the query.
IQBIntType      

HistoryDocStatus

Indicates the current status of the cost memo created as a result of this request. Status of reversed means that this was an original memo that had to be corrected. Status of reversing means that this memo caused an older memo to be reversed. Status of regular means that the document has been corrected.
IQBENHistoryDocStatusType      

ItemsCount

The number of line items in the adjustment add request that added the adjustment to QBPOS.
IQBIntType      

QuickBooksFlag

This element is used only if QBPOS is being used with QuickBooks Financial Software. The value here displays the status of data export for a memo: NOT POSTED (not yet sent to QuickBooks), COMPLETE (sent to QuickBooks), or ERROR (attempting to send the memo to QuickBooks resulted in an error). Values: NotPosted, Completed, Error, UnbilledPurchases No default value.
IQBENQuickBooksFlagType      

SlipETA

Estimated time of arrival of the merchandise at the destination store (To Store).
IQBDateType      

SlipNumber

This is a unique number automatically assigned to the transfer slip at creation time by QBPOS.
IQBIntType      

StoreExchangeStatus

In multi store configurations, if the customer’s information has changed, this information is updated at the headquarters store. This response field indicates whether the information was successfully updated or not.
IQBENStoreExchangeStatusType      

ToStoreNumber

Specifies the ending value of the Store Number range. Only memos whose Store Number value falls between the FromStoreNumber value and this value will be returned in the query.
IQBIntType      

TotalCost

The sum of the listed item’s extended costs. Note: Individual item extended costs are not displayed on the slip.
IQBAmountType      

TotalQty

Total quantity of items being transferred.
IQBQuanType      

TxnDate

The date of the transaction. In some cases, if you leave TxnDate out of an -Add message, QuickBooks will prefill TxnDate with the date of the last-saved transaction of the same type.
IQBDateType      

TxnState

Indicates whether the transaction is complete (Normal) or is a “held document” (Held) which means it is not yet finalized. For example, a saved draft pending while awaiting some work or decision.
IQBENTxnStateType   1.1  

Workstation

Workstation from which the transaction was made.
IQBIntType      

TransferSlipItemRetList

The list of transfer slip line items in the TransferSlipAdd request.
ITransferSlipItemRetList      

(List of ITransferSlipItemRet Objects)

       

ListID

The unique ID returned by QBPOS for this object. If supplied in a request, the ListID is a reference to an object required in the request. For example, in a SalesOrder or PurchaseOrder line item, the ListID that is required is an Item list ID.
IQBIDType      

NumberOfBaseUnits

If you use multiple units of measure, rather than a single UOM, you need to select one of the UOMs as the base unit. This base unit should be the smallest unit that you sell by. Inventory quantities are always expressed in terms of this base unit.
IQBQuanType   2.0  

Qty

The quantity of the line item being ordered or transferred.
IQBQuanType      

SerialNumber

Item serial numbers can be recorded in QBPOS for purposes of warranty tracking or meeting legal requirements. Once recorded, former documents can be quickly located by searching by serial number. To use serial number tracking: 1. In inventory, specify those items for which you want to record serial numbers by selecting PROMPT in the Serial # Tracking field. 2. When listing these items on documents (except purchase orders and cost memos), the QBPOS user is prompted to enter a unique serial number for each unit being processed. If listing several items on a document for which you have set the serial number requirement, the user is prompted to enter serial numbers for each unit of each of those items in sequence.
IQBStringType 25 chars    

UnitOfMeasure

If the company is using only a single unit of measure, this specifies the unit of measure for the item. If the company is using multiple units of measure, this specifies the base unit of measure for the item. Inventory quantities are tracked and reported in terms of this base unit.
IQBStringType 20 chars 2.0  

DataExtRetList

If you specify any custom fields/private data extensions to be returned in the query request (in the OwnerIDList), then this Ret List will contain all of the data extensions that belong to each specified OwnerID. For example, if you specify an OwnerID value of 0 (custom fields), then the query will return all custom data for the returned records.
IDataExtRetList   1.2  

(List of IDataExtRet Objects)

       

OwnerID

OwnerID refers to the owner of a data extension, and must be 0 or a valid GUID. (Custom fields, which are visible in the QuickBooks UI, always have an OwnerID of 0. ) Usually you would keep your application’s GUID confidential to prevent other applications from accessing your data extensions. But if you want to share data extensions with another application, the applications need to use the same GUID. In this case, each application could use two GUIDs, one for shared data extensions and one for confidential data extensions. (An application can have any number of GUIDs.) When you share a data extension with another application, the other application must know both the OwnerID and the DataExtName, as these together form a data extension’s unique name.
IQBGUIDType     Y

DataExtName

The name of the data extension. If this is a custom field, DataExtName will be visible as a label in the QuickBooks user interface. Also because OwnerID and DataExtName together make the data extension unique, and because custom fields all have the same OwnerID of zero, the DataExtName must be a unique value among existing custom fields. In contrast, the DataExtName for private data extensions must be unique only for the specified OwnerID GUID.
IQBStringType     Y

DataExtType

b>DataExtType The type of the data extension.
IQBENDataExtTypeType     Y

DataExtValue

The data in this field. The maximum length of DataExtValue will depend on the DataExtType of this data extension. For example, if DataExtType is STR255TYPE, the maximum length of DataExtValue is 255 characters. If DataExtType is STR1024TYPE, the maximum size of DataExtValue is 1KB.
IQBStringType     Y

  1
  2
  3
  4
  5
  6
  7
  8
  9
 10
 11
 12
 13
 14
 15
 16
 17
 18
 19
 20
 21
 22
 23
 24
 25
 26
 27
 28
 29
 30
 31
 32
 33
 34
 35
 36
 37
 38
 39
 40
 41
 42
 43
 44
 45
 46
 47
 48
 49
 50
 51
 52
 53
 54
 55
 56
 57
 58
 59
 60
 61
 62
 63
 64
 65
 66
 67
 68
 69
 70
 71
 72
 73
 74
 75
 76
 77
 78
 79
 80
 81
 82
 83
 84
 85
 86
 87
 88
 89
 90
 91
 92
 93
 94
 95
 96
 97
 98
 99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
<?xml version="1.0" encoding="utf-8"?>
<?qbposxml version="4.0"?>
<QBPOSXML>
        <QBPOSXMLMsgsRq onError="stopOnError">
                <TransferSlipQueryRq metaData="ENUMTYPE" iterator="ENUMTYPE" iteratorID="UUIDTYPE">
                        <MaxReturned >INTTYPE</MaxReturned> <!-- optional -->
                        <OwnerID >GUIDTYPE</OwnerID> <!-- optional, may repeat -->
                        <TxnID >IDTYPE</TxnID> <!-- optional -->
                        <!-- BEGIN OR -->
                                <TimeCreatedFilter> <!-- optional -->
                                        <!-- MatchNumericCriterion may have one of the following values: LessThan, LessThanEqual, Equal, GreaterThan, GreaterThanEqual -->
                                        <MatchNumericCriterion >ENUMTYPE</MatchNumericCriterion> <!-- required -->
                                        <TimeCreated >DATETIMETYPE</TimeCreated> <!-- required -->
                                </TimeCreatedFilter>
                        <!-- OR -->
                                <TimeCreatedRangeFilter> <!-- optional -->
                                        <FromTimeCreated >DATETIMETYPE</FromTimeCreated> <!-- required -->
                                        <ToTimeCreated >DATETIMETYPE</ToTimeCreated> <!-- required -->
                                </TimeCreatedRangeFilter>
                        <!-- END OR -->
                        <!-- BEGIN OR -->
                                <TimeModifiedFilter> <!-- optional -->
                                        <!-- MatchNumericCriterion may have one of the following values: LessThan, LessThanEqual, Equal, GreaterThan, GreaterThanEqual -->
                                        <MatchNumericCriterion >ENUMTYPE</MatchNumericCriterion> <!-- required -->
                                        <TimeModified >DATETIMETYPE</TimeModified> <!-- required -->
                                </TimeModifiedFilter>
                        <!-- OR -->
                                <TimeModifiedRangeFilter> <!-- optional -->
                                        <FromTimeModified >DATETIMETYPE</FromTimeModified> <!-- required -->
                                        <ToTimeModified >DATETIMETYPE</ToTimeModified> <!-- required -->
                                </TimeModifiedRangeFilter>
                        <!-- END OR -->
                        <!-- BEGIN OR -->
                                <AssociateFilter> <!-- optional -->
                                        <!-- MatchStringCriterion may have one of the following values: Equal, StartsWith, Contains, EndsWith -->
                                        <MatchStringCriterion >ENUMTYPE</MatchStringCriterion> <!-- required -->
                                        <Associate >STRTYPE</Associate> <!-- required -->
                                </AssociateFilter>
                        <!-- OR -->
                                <AssociateRangeFilter> <!-- optional -->
                                        <FromAssociate >STRTYPE</FromAssociate> <!-- required -->
                                        <ToAssociate >STRTYPE</ToAssociate> <!-- required -->
                                </AssociateRangeFilter>
                        <!-- END OR -->
                        <!-- BEGIN OR -->
                                <CarrierFilter> <!-- optional -->
                                        <!-- MatchStringCriterion may have one of the following values: Equal, StartsWith, Contains, EndsWith -->
                                        <MatchStringCriterion >ENUMTYPE</MatchStringCriterion> <!-- required -->
                                        <Carrier >STRTYPE</Carrier> <!-- required -->
                                </CarrierFilter>
                        <!-- OR -->
                                <CarrierRangeFilter> <!-- optional -->
                                        <FromCarrier >STRTYPE</FromCarrier> <!-- required -->
                                        <ToCarrier >STRTYPE</ToCarrier> <!-- required -->
                                </CarrierRangeFilter>
                        <!-- END OR -->
                        <!-- BEGIN OR -->
                                <CommentsFilter> <!-- optional -->
                                        <!-- MatchStringCriterion may have one of the following values: Equal, StartsWith, Contains, EndsWith -->
                                        <MatchStringCriterion >ENUMTYPE</MatchStringCriterion> <!-- required -->
                                        <Comments >STRTYPE</Comments> <!-- required -->
                                </CommentsFilter>
                        <!-- OR -->
                                <CommentsRangeFilter> <!-- optional -->
                                        <FromComments >STRTYPE</FromComments> <!-- required -->
                                        <ToComments >STRTYPE</ToComments> <!-- required -->
                                </CommentsRangeFilter>
                        <!-- END OR -->
                        <!-- BEGIN OR -->
                                <FreightFilter> <!-- optional -->
                                        <!-- MatchNumericCriterion may have one of the following values: LessThan, LessThanEqual, Equal, GreaterThan, GreaterThanEqual -->
                                        <MatchNumericCriterion >ENUMTYPE</MatchNumericCriterion> <!-- required -->
                                        <Freight >AMTTYPE</Freight> <!-- required -->
                                </FreightFilter>
                        <!-- OR -->
                                <FreightRangeFilter> <!-- optional -->
                                        <FromFreight >AMTTYPE</FromFreight> <!-- required -->
                                        <ToFreight >AMTTYPE</ToFreight> <!-- required -->
                                </FreightRangeFilter>
                        <!-- END OR -->
                        <!-- BEGIN OR -->
                                <FromStoreNumberFilter> <!-- optional -->
                                        <!-- MatchNumericCriterion may have one of the following values: LessThan, LessThanEqual, Equal, GreaterThan, GreaterThanEqual -->
                                        <MatchNumericCriterion >ENUMTYPE</MatchNumericCriterion> <!-- required -->
                                        <FromStoreNumber >INTTYPE</FromStoreNumber> <!-- required -->
                                </FromStoreNumberFilter>
                        <!-- OR -->
                                <FromStoreNumberRangeFilter> <!-- optional -->
                                        <FromFromStoreNumber >INTTYPE</FromFromStoreNumber> <!-- required -->
                                        <ToFromStoreNumber >INTTYPE</ToFromStoreNumber> <!-- required -->
                                </FromStoreNumberRangeFilter>
                        <!-- END OR -->
                        <!-- HistoryDocStatus may have one of the following values: Regular, Reversed, Reversing -->
                        <HistoryDocStatus >ENUMTYPE</HistoryDocStatus> <!-- optional -->
                        <!-- BEGIN OR -->
                                <ItemsCountFilter> <!-- optional -->
                                        <!-- MatchNumericCriterion may have one of the following values: LessThan, LessThanEqual, Equal, GreaterThan, GreaterThanEqual -->
                                        <MatchNumericCriterion >ENUMTYPE</MatchNumericCriterion> <!-- required -->
                                        <ItemsCount >INTTYPE</ItemsCount> <!-- required -->
                                </ItemsCountFilter>
                        <!-- OR -->
                                <ItemsCountRangeFilter> <!-- optional -->
                                        <FromItemsCount >INTTYPE</FromItemsCount> <!-- required -->
                                        <ToItemsCount >INTTYPE</ToItemsCount> <!-- required -->
                                </ItemsCountRangeFilter>
                        <!-- END OR -->
                        <!-- QuickBooksFlag may have one of the following values: NotPosted, Completed, Error, UnbilledPurchases -->
                        <QuickBooksFlag >ENUMTYPE</QuickBooksFlag> <!-- optional -->
                        <!-- BEGIN OR -->
                                <SlipETAFilter> <!-- optional -->
                                        <!-- MatchNumericCriterion may have one of the following values: LessThan, LessThanEqual, Equal, GreaterThan, GreaterThanEqual -->
                                        <MatchNumericCriterion >ENUMTYPE</MatchNumericCriterion> <!-- required -->
                                        <SlipETA >DATETYPE</SlipETA> <!-- required -->
                                </SlipETAFilter>
                        <!-- OR -->
                                <SlipETARangeFilter> <!-- optional -->
                                        <FromSlipETA >DATETYPE</FromSlipETA> <!-- required -->
                                        <ToSlipETA >DATETYPE</ToSlipETA> <!-- required -->
                                </SlipETARangeFilter>
                        <!-- END OR -->
                        <!-- BEGIN OR -->
                                <SlipNumberFilter> <!-- optional -->
                                        <!-- MatchNumericCriterion may have one of the following values: LessThan, LessThanEqual, Equal, GreaterThan, GreaterThanEqual -->
                                        <MatchNumericCriterion >ENUMTYPE</MatchNumericCriterion> <!-- required -->
                                        <SlipNumber >INTTYPE</SlipNumber> <!-- required -->
                                </SlipNumberFilter>
                        <!-- OR -->
                                <SlipNumberRangeFilter> <!-- optional -->
                                        <FromSlipNumber >INTTYPE</FromSlipNumber> <!-- required -->
                                        <ToSlipNumber >INTTYPE</ToSlipNumber> <!-- required -->
                                </SlipNumberRangeFilter>
                        <!-- END OR -->
                        <!-- StoreExchangeStatus may have one of the following values: Modified, Sent, Acknowledged -->
                        <StoreExchangeStatus >ENUMTYPE</StoreExchangeStatus> <!-- optional -->
                        <!-- BEGIN OR -->
                                <ToStoreNumberFilter> <!-- optional -->
                                        <!-- MatchNumericCriterion may have one of the following values: LessThan, LessThanEqual, Equal, GreaterThan, GreaterThanEqual -->
                                        <MatchNumericCriterion >ENUMTYPE</MatchNumericCriterion> <!-- required -->
                                        <ToStoreNumber >INTTYPE</ToStoreNumber> <!-- required -->
                                </ToStoreNumberFilter>
                        <!-- OR -->
                                <ToStoreNumberRangeFilter> <!-- optional -->
                                        <FromToStoreNumber >INTTYPE</FromToStoreNumber> <!-- required -->
                                        <ToToStoreNumber >INTTYPE</ToToStoreNumber> <!-- required -->
                                </ToStoreNumberRangeFilter>
                        <!-- END OR -->
                        <!-- BEGIN OR -->
                                <TotalCostFilter> <!-- optional -->
                                        <!-- MatchNumericCriterion may have one of the following values: LessThan, LessThanEqual, Equal, GreaterThan, GreaterThanEqual -->
                                        <MatchNumericCriterion >ENUMTYPE</MatchNumericCriterion> <!-- required -->
                                        <TotalCost >AMTTYPE</TotalCost> <!-- required -->
                                </TotalCostFilter>
                        <!-- OR -->
                                <TotalCostRangeFilter> <!-- optional -->
                                        <FromTotalCost >AMTTYPE</FromTotalCost> <!-- required -->
                                        <ToTotalCost >AMTTYPE</ToTotalCost> <!-- required -->
                                </TotalCostRangeFilter>
                        <!-- END OR -->
                        <!-- BEGIN OR -->
                                <TotalQtyFilter> <!-- optional -->
                                        <!-- MatchNumericCriterion may have one of the following values: LessThan, LessThanEqual, Equal, GreaterThan, GreaterThanEqual -->
                                        <MatchNumericCriterion >ENUMTYPE</MatchNumericCriterion> <!-- required -->
                                        <TotalQty >QUANTYPE</TotalQty> <!-- required -->
                                </TotalQtyFilter>
                        <!-- OR -->
                                <TotalQtyRangeFilter> <!-- optional -->
                                        <FromTotalQty >QUANTYPE</FromTotalQty> <!-- required -->
                                        <ToTotalQty >QUANTYPE</ToTotalQty> <!-- required -->
                                </TotalQtyRangeFilter>
                        <!-- END OR -->
                        <!-- BEGIN OR -->
                                <TxnDateFilter> <!-- optional -->
                                        <!-- MatchNumericCriterion may have one of the following values: LessThan, LessThanEqual, Equal, GreaterThan, GreaterThanEqual -->
                                        <MatchNumericCriterion >ENUMTYPE</MatchNumericCriterion> <!-- required -->
                                        <TxnDate >DATETYPE</TxnDate> <!-- required -->
                                </TxnDateFilter>
                        <!-- OR -->
                                <TxnDateRangeFilter> <!-- optional -->
                                        <FromTxnDate >DATETYPE</FromTxnDate> <!-- required -->
                                        <ToTxnDate >DATETYPE</ToTxnDate> <!-- required -->
                                </TxnDateRangeFilter>
                        <!-- END OR -->
                        <!-- TxnState may have one of the following values: Normal, Held -->
                        <TxnState >ENUMTYPE</TxnState> <!-- optional -->
                        <!-- BEGIN OR -->
                                <WorkstationFilter> <!-- optional -->
                                        <!-- MatchNumericCriterion may have one of the following values: LessThan, LessThanEqual, Equal, GreaterThan, GreaterThanEqual -->
                                        <MatchNumericCriterion >ENUMTYPE</MatchNumericCriterion> <!-- required -->
                                        <Workstation >INTTYPE</Workstation> <!-- required -->
                                </WorkstationFilter>
                        <!-- OR -->
                                <WorkstationRangeFilter> <!-- optional -->
                                        <FromWorkstation >INTTYPE</FromWorkstation> <!-- required -->
                                        <ToWorkstation >INTTYPE</ToWorkstation> <!-- required -->
                                </WorkstationRangeFilter>
                        <!-- END OR -->
                        <IncludeRetElement >STRTYPE</IncludeRetElement> <!-- optional, may repeat -->
                </TransferSlipQueryRq>

                <TransferSlipQueryRs statusCode="INTTYPE" statusSeverity="STRTYPE" statusMessage="STRTYPE" retCount="INTTYPE" iteratorRemainingCount="INTTYPE" iteratorID="UUIDTYPE">
                        <TransferSlipRet> <!-- optional, may repeat -->
                                <TxnID >IDTYPE</TxnID> <!-- optional -->
                                <TimeCreated >DATETIMETYPE</TimeCreated> <!-- optional -->
                                <TimeModified >DATETIMETYPE</TimeModified> <!-- optional -->
                                <Associate >STRTYPE</Associate> <!-- optional -->
                                <Carrier >STRTYPE</Carrier> <!-- optional -->
                                <Comments >STRTYPE</Comments> <!-- optional -->
                                <Freight >AMTTYPE</Freight> <!-- optional -->
                                <FromStoreNumber >INTTYPE</FromStoreNumber> <!-- optional -->
                                <!-- HistoryDocStatus may have one of the following values: Regular, Reversed, Reversing -->
                                <HistoryDocStatus >ENUMTYPE</HistoryDocStatus> <!-- optional -->
                                <ItemsCount >INTTYPE</ItemsCount> <!-- optional -->
                                <!-- QuickBooksFlag may have one of the following values: NotPosted, Completed, Error, UnbilledPurchases -->
                                <QuickBooksFlag >ENUMTYPE</QuickBooksFlag> <!-- optional -->
                                <SlipETA >DATETYPE</SlipETA> <!-- optional -->
                                <SlipNumber >INTTYPE</SlipNumber> <!-- optional -->
                                <!-- StoreExchangeStatus may have one of the following values: Modified, Sent, Acknowledged -->
                                <StoreExchangeStatus >ENUMTYPE</StoreExchangeStatus> <!-- optional -->
                                <ToStoreNumber >INTTYPE</ToStoreNumber> <!-- optional -->
                                <TotalCost >AMTTYPE</TotalCost> <!-- optional -->
                                <TotalQty >QUANTYPE</TotalQty> <!-- optional -->
                                <TxnDate >DATETYPE</TxnDate> <!-- optional -->
                                <!-- TxnState may have one of the following values: Normal, Held -->
                                <TxnState >ENUMTYPE</TxnState> <!-- optional -->
                                <Workstation >INTTYPE</Workstation> <!-- optional -->
                                <TransferSlipItemRet> <!-- optional, may repeat -->
                                        <ListID >IDTYPE</ListID> <!-- optional -->
                                        <NumberOfBaseUnits >QUANTYPE</NumberOfBaseUnits> <!-- optional -->
                                        <Qty >QUANTYPE</Qty> <!-- optional -->
                                        <SerialNumber >STRTYPE</SerialNumber> <!-- optional -->
                                        <UnitOfMeasure >STRTYPE</UnitOfMeasure> <!-- optional -->
                                </TransferSlipItemRet>
                                <DataExtRet> <!-- optional, may repeat -->
                                        <OwnerID >GUIDTYPE</OwnerID> <!-- required -->
                                        <DataExtName >STRTYPE</DataExtName> <!-- required -->
                                        <!-- DataExtType may have one of the following values: INTTYPE, AMTTYPE, PRICETYPE, QUANTYPE, PERCENTTYPE, DATETIMETYPE, STR255TYPE, STR1024TYPE -->
                                        <DataExtType >ENUMTYPE</DataExtType> <!-- required -->
                                        <DataExtValue >STRTYPE</DataExtValue> <!-- required -->
                                </DataExtRet>
                        </TransferSlipRet>
                </TransferSlipQueryRs>
        </QBPOSXMLMsgsRq>
</QBPOSXML>

  1
  2
  3
  4
  5
  6
  7
  8
  9
 10
 11
 12
 13
 14
 15
 16
 17
 18
 19
 20
 21
 22
 23
 24
 25
 26
 27
 28
 29
 30
 31
 32
 33
 34
 35
 36
 37
 38
 39
 40
 41
 42
 43
 44
 45
 46
 47
 48
 49
 50
 51
 52
 53
 54
 55
 56
 57
 58
 59
 60
 61
 62
 63
 64
 65
 66
 67
 68
 69
 70
 71
 72
 73
 74
 75
 76
 77
 78
 79
 80
 81
 82
 83
 84
 85
 86
 87
 88
 89
 90
 91
 92
 93
 94
 95
 96
 97
 98
 99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
'The following sample code is generated as an illustration of
'Creating requests and parsing responses ONLY
'This code is NOT intended to show best practices or ideal code
'Use at your most careful discretion

imports System
imports System.Net
imports System.Drawing
imports System.Collections
imports System.ComponentModel
imports System.Windows.Forms
imports System.Data
imports System.IO
imports Interop.qbposfc4

        Public Class SampleTransferSlipQuery
                Public Sub  DoTransferSlipQuery()
                        Dim sessionBegun as Boolean
                        sessionBegun = False
                        Dim connectionOpen as Boolean
                        connectionOpen = False
                        Dim sessionManager as QBPOSSessionManager
                        sessionManager = nothing

                        Try
                                'Create the session Manager object
                                sessionManager = new QBPOSSessionManager

                                'Create the message set request object to hold our request
                                Dim requestMsgSet as IMsgSetRequest
                                requestMsgSet = sessionManager.CreateMsgSetRequest(4,0)
                                requestMsgSet.Attributes.OnError = ENRqOnError.roeContinue

                                BuildTransferSlipQueryRq(requestMsgSet)

                                'Connect to QuickBooks and begin a session
                                sessionManager.OpenConnection("","Sample Code from OSR")
                                connectionOpen = True
                                sessionManager.BeginSession("")
                                sessionBegun = True

                                'Send the request and get the response from QuickBooks
                                Dim responseMsgSet as IMsgSetResponse
                                responseMsgSet = sessionManager.DoRequests(requestMsgSet)

                                'End the session and close the connection to QuickBooks
                                sessionManager.EndSession()
                                sessionBegun = False
                                sessionManager.CloseConnection()
                                connectionOpen = False

                                WalkTransferSlipQueryRs(responseMsgSet)
                        Catch e as Exception
                                MessageBox.Show(e.Message, "Error")
                                if (sessionBegun) then
                                        sessionManager.EndSession()
                                End If
                                if (connectionOpen) then
                                        sessionManager.CloseConnection()
                                End If
                        End Try
                End Sub
                Public Sub BuildTransferSlipQueryRq(requestMsgSet as IMsgSetRequest)
                        Dim TransferSlipQueryRq as ITransferSlipQuery
                        TransferSlipQueryRq= requestMsgSet.AppendTransferSlipQueryRq()
                        'Set field value for MaxReturned
                        TransferSlipQueryRq.MaxReturned.SetValue(6)
                        'Set field value for OwnerIDList
                        'May create more than one of these if needed
                        TransferSlipQueryRq.OwnerIDList.Add(System.Guid.NewGuid().ToString())
                        'Set field value for TxnID
                        TransferSlipQueryRq.TxnID.SetValue("200000-1011023419")
                        Dim ORTimeCreatedFiltersElementType4405 as String
                        ORTimeCreatedFiltersElementType4405 = "TimeCreatedFilter"
                        if (ORTimeCreatedFiltersElementType4405 = "TimeCreatedFilter") then
                                'Set field value for MatchNumericCriterion
                                TransferSlipQueryRq.ORTimeCreatedFilters.TimeCreatedFilter.MatchNumericCriterion.SetValue(ENMatchNumericCriterion.mncLessThan)
                                'Set field value for TimeCreated
                                TransferSlipQueryRq.ORTimeCreatedFilters.TimeCreatedFilter.TimeCreated.SetValue(DateTime.Parse("12/15/2007 12:15:12"),false)
                        End If
                        if (ORTimeCreatedFiltersElementType4405 = "TimeCreatedRangeFilter") then
                                'Set field value for FromTimeCreated
                                TransferSlipQueryRq.ORTimeCreatedFilters.TimeCreatedRangeFilter.FromTimeCreated.SetValue(DateTime.Parse("12/15/2007 12:15:12"),false)
                                'Set field value for ToTimeCreated
                                TransferSlipQueryRq.ORTimeCreatedFilters.TimeCreatedRangeFilter.ToTimeCreated.SetValue(DateTime.Parse("12/15/2007 12:15:12"),false)
                        End If
                        Dim ORTimeModifiedFiltersElementType4406 as String
                        ORTimeModifiedFiltersElementType4406 = "TimeModifiedFilter"
                        if (ORTimeModifiedFiltersElementType4406 = "TimeModifiedFilter") then
                                'Set field value for MatchNumericCriterion
                                TransferSlipQueryRq.ORTimeModifiedFilters.TimeModifiedFilter.MatchNumericCriterion.SetValue(ENMatchNumericCriterion.mncLessThan)
                                'Set field value for TimeModified
                                TransferSlipQueryRq.ORTimeModifiedFilters.TimeModifiedFilter.TimeModified.SetValue(DateTime.Parse("12/15/2007 12:15:12"),false)
                        End If
                        if (ORTimeModifiedFiltersElementType4406 = "TimeModifiedRangeFilter") then
                                'Set field value for FromTimeModified
                                TransferSlipQueryRq.ORTimeModifiedFilters.TimeModifiedRangeFilter.FromTimeModified.SetValue(DateTime.Parse("12/15/2007 12:15:12"),false)
                                'Set field value for ToTimeModified
                                TransferSlipQueryRq.ORTimeModifiedFilters.TimeModifiedRangeFilter.ToTimeModified.SetValue(DateTime.Parse("12/15/2007 12:15:12"),false)
                        End If
                        Dim ORAssociateFiltersElementType4407 as String
                        ORAssociateFiltersElementType4407 = "AssociateFilter"
                        if (ORAssociateFiltersElementType4407 = "AssociateFilter") then
                                'Set field value for MatchStringCriterion
                                TransferSlipQueryRq.ORAssociateFilters.AssociateFilter.MatchStringCriterion.SetValue(ENMatchStringCriterion.mscEqual)
                                'Set field value for Associate
                                TransferSlipQueryRq.ORAssociateFilters.AssociateFilter.Associate.SetValue("ab")
                        End If
                        if (ORAssociateFiltersElementType4407 = "AssociateRangeFilter") then
                                'Set field value for FromAssociate
                                TransferSlipQueryRq.ORAssociateFilters.AssociateRangeFilter.FromAssociate.SetValue("ab")
                                'Set field value for ToAssociate
                                TransferSlipQueryRq.ORAssociateFilters.AssociateRangeFilter.ToAssociate.SetValue("ab")
                        End If
                        Dim ORCarrierFiltersElementType4408 as String
                        ORCarrierFiltersElementType4408 = "CarrierFilter"
                        if (ORCarrierFiltersElementType4408 = "CarrierFilter") then
                                'Set field value for MatchStringCriterion
                                TransferSlipQueryRq.ORCarrierFilters.CarrierFilter.MatchStringCriterion.SetValue(ENMatchStringCriterion.mscEqual)
                                'Set field value for Carrier
                                TransferSlipQueryRq.ORCarrierFilters.CarrierFilter.Carrier.SetValue("ab")
                        End If
                        if (ORCarrierFiltersElementType4408 = "CarrierRangeFilter") then
                                'Set field value for FromCarrier
                                TransferSlipQueryRq.ORCarrierFilters.CarrierRangeFilter.FromCarrier.SetValue("ab")
                                'Set field value for ToCarrier
                                TransferSlipQueryRq.ORCarrierFilters.CarrierRangeFilter.ToCarrier.SetValue("ab")
                        End If
                        Dim ORCommentsFiltersElementType4409 as String
                        ORCommentsFiltersElementType4409 = "CommentsFilter"
                        if (ORCommentsFiltersElementType4409 = "CommentsFilter") then
                                'Set field value for MatchStringCriterion
                                TransferSlipQueryRq.ORCommentsFilters.CommentsFilter.MatchStringCriterion.SetValue(ENMatchStringCriterion.mscEqual)
                                'Set field value for Comments
                                TransferSlipQueryRq.ORCommentsFilters.CommentsFilter.Comments.SetValue("ab")
                        End If
                        if (ORCommentsFiltersElementType4409 = "CommentsRangeFilter") then
                                'Set field value for FromComments
                                TransferSlipQueryRq.ORCommentsFilters.CommentsRangeFilter.FromComments.SetValue("ab")
                                'Set field value for ToComments
                                TransferSlipQueryRq.ORCommentsFilters.CommentsRangeFilter.ToComments.SetValue("ab")
                        End If
                        Dim ORFreightFiltersElementType4410 as String
                        ORFreightFiltersElementType4410 = "FreightFilter"
                        if (ORFreightFiltersElementType4410 = "FreightFilter") then
                                'Set field value for MatchNumericCriterion
                                TransferSlipQueryRq.ORFreightFilters.FreightFilter.MatchNumericCriterion.SetValue(ENMatchNumericCriterion.mncLessThan)
                                'Set field value for Freight
                                TransferSlipQueryRq.ORFreightFilters.FreightFilter.Freight.SetValue(10.01)
                        End If
                        if (ORFreightFiltersElementType4410 = "FreightRangeFilter") then
                                'Set field value for FromFreight
                                TransferSlipQueryRq.ORFreightFilters.FreightRangeFilter.FromFreight.SetValue(10.01)
                                'Set field value for ToFreight
                                TransferSlipQueryRq.ORFreightFilters.FreightRangeFilter.ToFreight.SetValue(10.01)
                        End If
                        Dim ORFromStoreNumberFiltersElementType4411 as String
                        ORFromStoreNumberFiltersElementType4411 = "FromStoreNumberFilter"
                        if (ORFromStoreNumberFiltersElementType4411 = "FromStoreNumberFilter") then
                                'Set field value for MatchNumericCriterion
                                TransferSlipQueryRq.ORFromStoreNumberFilters.FromStoreNumberFilter.MatchNumericCriterion.SetValue(ENMatchNumericCriterion.mncLessThan)
                                'Set field value for FromStoreNumber
                                TransferSlipQueryRq.ORFromStoreNumberFilters.FromStoreNumberFilter.FromStoreNumber.SetValue(6)
                        End If
                        if (ORFromStoreNumberFiltersElementType4411 = "FromStoreNumberRangeFilter") then
                                'Set field value for FromFromStoreNumber
                                TransferSlipQueryRq.ORFromStoreNumberFilters.FromStoreNumberRangeFilter.FromFromStoreNumber.SetValue(6)
                                'Set field value for ToFromStoreNumber
                                TransferSlipQueryRq.ORFromStoreNumberFilters.FromStoreNumberRangeFilter.ToFromStoreNumber.SetValue(6)
                        End If
                        'Set field value for HistoryDocStatus
                        TransferSlipQueryRq.HistoryDocStatus.SetValue(ENHistoryDocStatus.hdsRegular)
                        Dim ORItemsCountFiltersElementType4412 as String
                        ORItemsCountFiltersElementType4412 = "ItemsCountFilter"
                        if (ORItemsCountFiltersElementType4412 = "ItemsCountFilter") then
                                'Set field value for MatchNumericCriterion
                                TransferSlipQueryRq.ORItemsCountFilters.ItemsCountFilter.MatchNumericCriterion.SetValue(ENMatchNumericCriterion.mncLessThan)
                                'Set field value for ItemsCount
                                TransferSlipQueryRq.ORItemsCountFilters.ItemsCountFilter.ItemsCount.SetValue(6)
                        End If
                        if (ORItemsCountFiltersElementType4412 = "ItemsCountRangeFilter") then
                                'Set field value for FromItemsCount
                                TransferSlipQueryRq.ORItemsCountFilters.ItemsCountRangeFilter.FromItemsCount.SetValue(6)
                                'Set field value for ToItemsCount
                                TransferSlipQueryRq.ORItemsCountFilters.ItemsCountRangeFilter.ToItemsCount.SetValue(6)
                        End If
                        'Set field value for QuickBooksFlag
                        TransferSlipQueryRq.QuickBooksFlag.SetValue(ENQuickBooksFlag.qbfNotPosted)
                        Dim ORSlipETAFiltersElementType4413 as String
                        ORSlipETAFiltersElementType4413 = "SlipETAFilter"
                        if (ORSlipETAFiltersElementType4413 = "SlipETAFilter") then
                                'Set field value for MatchNumericCriterion
                                TransferSlipQueryRq.ORSlipETAFilters.SlipETAFilter.MatchNumericCriterion.SetValue(ENMatchNumericCriterion.mncLessThan)
                                'Set field value for SlipETA
                                TransferSlipQueryRq.ORSlipETAFilters.SlipETAFilter.SlipETA.SetValue(DateTime.Parse("12/15/2007"))
                        End If
                        if (ORSlipETAFiltersElementType4413 = "SlipETARangeFilter") then
                                'Set field value for FromSlipETA
                                TransferSlipQueryRq.ORSlipETAFilters.SlipETARangeFilter.FromSlipETA.SetValue(DateTime.Parse("12/15/2007"))
                                'Set field value for ToSlipETA
                                TransferSlipQueryRq.ORSlipETAFilters.SlipETARangeFilter.ToSlipETA.SetValue(DateTime.Parse("12/15/2007"))
                        End If
                        Dim ORSlipNumberFiltersElementType4414 as String
                        ORSlipNumberFiltersElementType4414 = "SlipNumberFilter"
                        if (ORSlipNumberFiltersElementType4414 = "SlipNumberFilter") then
                                'Set field value for MatchNumericCriterion
                                TransferSlipQueryRq.ORSlipNumberFilters.SlipNumberFilter.MatchNumericCriterion.SetValue(ENMatchNumericCriterion.mncLessThan)
                                'Set field value for SlipNumber
                                TransferSlipQueryRq.ORSlipNumberFilters.SlipNumberFilter.SlipNumber.SetValue(6)
                        End If
                        if (ORSlipNumberFiltersElementType4414 = "SlipNumberRangeFilter") then
                                'Set field value for FromSlipNumber
                                TransferSlipQueryRq.ORSlipNumberFilters.SlipNumberRangeFilter.FromSlipNumber.SetValue(6)
                                'Set field value for ToSlipNumber
                                TransferSlipQueryRq.ORSlipNumberFilters.SlipNumberRangeFilter.ToSlipNumber.SetValue(6)
                        End If
                        'Set field value for StoreExchangeStatus
                        TransferSlipQueryRq.StoreExchangeStatus.SetValue(ENStoreExchangeStatus.sesModified)
                        Dim ORToStoreNumberFiltersElementType4415 as String
                        ORToStoreNumberFiltersElementType4415 = "ToStoreNumberFilter"
                        if (ORToStoreNumberFiltersElementType4415 = "ToStoreNumberFilter") then
                                'Set field value for MatchNumericCriterion
                                TransferSlipQueryRq.ORToStoreNumberFilters.ToStoreNumberFilter.MatchNumericCriterion.SetValue(ENMatchNumericCriterion.mncLessThan)
                                'Set field value for ToStoreNumber
                                TransferSlipQueryRq.ORToStoreNumberFilters.ToStoreNumberFilter.ToStoreNumber.SetValue(6)
                        End If
                        if (ORToStoreNumberFiltersElementType4415 = "ToStoreNumberRangeFilter") then
                                'Set field value for FromToStoreNumber
                                TransferSlipQueryRq.ORToStoreNumberFilters.ToStoreNumberRangeFilter.FromToStoreNumber.SetValue(6)
                                'Set field value for ToToStoreNumber
                                TransferSlipQueryRq.ORToStoreNumberFilters.ToStoreNumberRangeFilter.ToToStoreNumber.SetValue(6)
                        End If
                        Dim ORTotalCostFiltersElementType4416 as String
                        ORTotalCostFiltersElementType4416 = "TotalCostFilter"
                        if (ORTotalCostFiltersElementType4416 = "TotalCostFilter") then
                                'Set field value for MatchNumericCriterion
                                TransferSlipQueryRq.ORTotalCostFilters.TotalCostFilter.MatchNumericCriterion.SetValue(ENMatchNumericCriterion.mncLessThan)
                                'Set field value for TotalCost
                                TransferSlipQueryRq.ORTotalCostFilters.TotalCostFilter.TotalCost.SetValue(10.01)
                        End If
                        if (ORTotalCostFiltersElementType4416 = "TotalCostRangeFilter") then
                                'Set field value for FromTotalCost
                                TransferSlipQueryRq.ORTotalCostFilters.TotalCostRangeFilter.FromTotalCost.SetValue(10.01)
                                'Set field value for ToTotalCost
                                TransferSlipQueryRq.ORTotalCostFilters.TotalCostRangeFilter.ToTotalCost.SetValue(10.01)
                        End If
                        Dim ORTotalQtyFiltersElementType4417 as String
                        ORTotalQtyFiltersElementType4417 = "TotalQtyFilter"
                        if (ORTotalQtyFiltersElementType4417 = "TotalQtyFilter") then
                                'Set field value for MatchNumericCriterion
                                TransferSlipQueryRq.ORTotalQtyFilters.TotalQtyFilter.MatchNumericCriterion.SetValue(ENMatchNumericCriterion.mncLessThan)
                                'Set field value for TotalQty
                                TransferSlipQueryRq.ORTotalQtyFilters.TotalQtyFilter.TotalQty.SetValue(2)
                        End If
                        if (ORTotalQtyFiltersElementType4417 = "TotalQtyRangeFilter") then
                                'Set field value for FromTotalQty
                                TransferSlipQueryRq.ORTotalQtyFilters.TotalQtyRangeFilter.FromTotalQty.SetValue(2)
                                'Set field value for ToTotalQty
                                TransferSlipQueryRq.ORTotalQtyFilters.TotalQtyRangeFilter.ToTotalQty.SetValue(2)
                        End If
                        Dim ORTxnDateFiltersElementType4418 as String
                        ORTxnDateFiltersElementType4418 = "TxnDateFilter"
                        if (ORTxnDateFiltersElementType4418 = "TxnDateFilter") then
                                'Set field value for MatchNumericCriterion
                                TransferSlipQueryRq.ORTxnDateFilters.TxnDateFilter.MatchNumericCriterion.SetValue(ENMatchNumericCriterion.mncLessThan)
                                'Set field value for TxnDate
                                TransferSlipQueryRq.ORTxnDateFilters.TxnDateFilter.TxnDate.SetValue(DateTime.Parse("12/15/2007"))
                        End If
                        if (ORTxnDateFiltersElementType4418 = "TxnDateRangeFilter") then
                                'Set field value for FromTxnDate
                                TransferSlipQueryRq.ORTxnDateFilters.TxnDateRangeFilter.FromTxnDate.SetValue(DateTime.Parse("12/15/2007"))
                                'Set field value for ToTxnDate
                                TransferSlipQueryRq.ORTxnDateFilters.TxnDateRangeFilter.ToTxnDate.SetValue(DateTime.Parse("12/15/2007"))
                        End If
                        'Set field value for TxnState
                        TransferSlipQueryRq.TxnState.SetValue(ENTxnState.tsNormal)
                        Dim ORWorkstationFiltersElementType4419 as String
                        ORWorkstationFiltersElementType4419 = "WorkstationFilter"
                        if (ORWorkstationFiltersElementType4419 = "WorkstationFilter") then
                                'Set field value for MatchNumericCriterion
                                TransferSlipQueryRq.ORWorkstationFilters.WorkstationFilter.MatchNumericCriterion.SetValue(ENMatchNumericCriterion.mncLessThan)
                                'Set field value for Workstation
                                TransferSlipQueryRq.ORWorkstationFilters.WorkstationFilter.Workstation.SetValue(6)
                        End If
                        if (ORWorkstationFiltersElementType4419 = "WorkstationRangeFilter") then
                                'Set field value for FromWorkstation
                                TransferSlipQueryRq.ORWorkstationFilters.WorkstationRangeFilter.FromWorkstation.SetValue(6)
                                'Set field value for ToWorkstation
                                TransferSlipQueryRq.ORWorkstationFilters.WorkstationRangeFilter.ToWorkstation.SetValue(6)
                        End If
                        'Set field value for IncludeRetElementList
                        'May create more than one of these if needed
                        TransferSlipQueryRq.IncludeRetElementList.Add("ab")
                End Sub




                Public Sub WalkTransferSlipQueryRs( responseMsgSet as IMsgSetResponse)
                        if (responseMsgSet is nothing) then
                                Exit Sub
                        End If

                        Dim responseList as IResponseList
                        responseList = responseMsgSet.ResponseList
                        if (responseList is nothing) then
                                Exit Sub
                        End If

                        'if we sent only one request, there is only one response, we'll walk the list for this sample
                        for j=0 to responseList.Count-1
                                Dim response as IResponse
                                response = responseList.GetAt(j)
                                'check the status code of the response, 0=ok, >0 is warning
                                if (response.StatusCode >= 0) then
                                        'the request-specific response is in the details, make sure we have some
                                        if (not response.Detail is nothing) then
                                                'make sure the response is the type we're expecting
                                                Dim responseType as ENResponseType
                                                responseType = CType(response.Type.GetValue(),ENResponseType)
                                                if (responseType = ENResponseType.rtTransferSlipQueryRs) then
                                                        'upcast to more specific type here, this is safe because we checked with response.Type check above
                                                        Dim TransferSlipRet as ITransferSlipRetList
                                                        TransferSlipRet = CType(response.Detail,ITransferSlipRetList)
                                                        for z=0 to TransferSlipRet.Count-1
                                                                WalkTransferSlipRet(TransferSlipRet.GetAt(z))
                                                        Next z
                                                End If
                                        End If
                                End If
                        Next j
                End Sub




                Public Sub WalkTransferSlipRet(TransferSlipRet as ITransferSlipRet)
                        if (TransferSlipRet is nothing) then
                                Exit Sub
                        End If

                        'Go through all the elements of ITransferSlipRetList
                        'Get value of TxnID
                        if ( not TransferSlipRet.TxnID is nothing) then
                                Dim TxnID4420 as String
                                TxnID4420 = TransferSlipRet.TxnID.GetValue()
                        End If
                        'Get value of TimeCreated
                        if ( not TransferSlipRet.TimeCreated is nothing) then
                                Dim TimeCreated4421 as DateTime
                                TimeCreated4421 = TransferSlipRet.TimeCreated.GetValue()
                        End If
                        'Get value of TimeModified
                        if ( not TransferSlipRet.TimeModified is nothing) then
                                Dim TimeModified4422 as DateTime
                                TimeModified4422 = TransferSlipRet.TimeModified.GetValue()
                        End If
                        'Get value of Associate
                        if ( not TransferSlipRet.Associate is nothing) then
                                Dim Associate4423 as String
                                Associate4423 = TransferSlipRet.Associate.GetValue()
                        End If
                        'Get value of Carrier
                        if ( not TransferSlipRet.Carrier is nothing) then
                                Dim Carrier4424 as String
                                Carrier4424 = TransferSlipRet.Carrier.GetValue()
                        End If
                        'Get value of Comments
                        if ( not TransferSlipRet.Comments is nothing) then
                                Dim Comments4425 as String
                                Comments4425 = TransferSlipRet.Comments.GetValue()
                        End If
                        'Get value of Freight
                        if ( not TransferSlipRet.Freight is nothing) then
                                Dim Freight4426 as Double
                                Freight4426 = TransferSlipRet.Freight.GetValue()
                        End If
                        'Get value of FromStoreNumber
                        if ( not TransferSlipRet.FromStoreNumber is nothing) then
                                Dim FromStoreNumber4427 as Integer
                                FromStoreNumber4427 = TransferSlipRet.FromStoreNumber.GetValue()
                        End If
                        'Get value of HistoryDocStatus
                        if ( not TransferSlipRet.HistoryDocStatus is nothing) then
                                Dim HistoryDocStatus4428 as ENHistoryDocStatus
                                HistoryDocStatus4428 = TransferSlipRet.HistoryDocStatus.GetValue()
                        End If
                        'Get value of ItemsCount
                        if ( not TransferSlipRet.ItemsCount is nothing) then
                                Dim ItemsCount4429 as Integer
                                ItemsCount4429 = TransferSlipRet.ItemsCount.GetValue()
                        End If
                        'Get value of QuickBooksFlag
                        if ( not TransferSlipRet.QuickBooksFlag is nothing) then
                                Dim QuickBooksFlag4430 as ENQuickBooksFlag
                                QuickBooksFlag4430 = TransferSlipRet.QuickBooksFlag.GetValue()
                        End If
                        'Get value of SlipETA
                        if ( not TransferSlipRet.SlipETA is nothing) then
                                Dim SlipETA4431 as DateTime
                                SlipETA4431 = TransferSlipRet.SlipETA.GetValue()
                        End If
                        'Get value of SlipNumber
                        if ( not TransferSlipRet.SlipNumber is nothing) then
                                Dim SlipNumber4432 as Integer
                                SlipNumber4432 = TransferSlipRet.SlipNumber.GetValue()
                        End If
                        'Get value of StoreExchangeStatus
                        if ( not TransferSlipRet.StoreExchangeStatus is nothing) then
                                Dim StoreExchangeStatus4433 as ENStoreExchangeStatus
                                StoreExchangeStatus4433 = TransferSlipRet.StoreExchangeStatus.GetValue()
                        End If
                        'Get value of ToStoreNumber
                        if ( not TransferSlipRet.ToStoreNumber is nothing) then
                                Dim ToStoreNumber4434 as Integer
                                ToStoreNumber4434 = TransferSlipRet.ToStoreNumber.GetValue()
                        End If
                        'Get value of TotalCost
                        if ( not TransferSlipRet.TotalCost is nothing) then
                                Dim TotalCost4435 as Double
                                TotalCost4435 = TransferSlipRet.TotalCost.GetValue()
                        End If
                        'Get value of TotalQty
                        if ( not TransferSlipRet.TotalQty is nothing) then
                                Dim TotalQty4436 as Double
                                TotalQty4436 = TransferSlipRet.TotalQty.GetValue()
                        End If
                        'Get value of TxnDate
                        if ( not TransferSlipRet.TxnDate is nothing) then
                                Dim TxnDate4437 as DateTime
                                TxnDate4437 = TransferSlipRet.TxnDate.GetValue()
                        End If
                        'Get value of TxnState
                        if ( not TransferSlipRet.TxnState is nothing) then
                                Dim TxnState4438 as ENTxnState
                                TxnState4438 = TransferSlipRet.TxnState.GetValue()
                        End If
                        'Get value of Workstation
                        if ( not TransferSlipRet.Workstation is nothing) then
                                Dim Workstation4439 as Integer
                                Workstation4439 = TransferSlipRet.Workstation.GetValue()
                        End If
                        if (not TransferSlipRet.TransferSlipItemRetList is nothing)
                                Dim i4440 as Integer
                                for i4440 = 0  to TransferSlipRet.TransferSlipItemRetList.Count - 1
                                        Dim TransferSlipItemRet as ITransferSlipItemRet
                                        TransferSlipItemRet = TransferSlipRet.TransferSlipItemRetList.GetAt(i4440)
                                        'Get value of ListID
                                        if ( not TransferSlipItemRet.ListID is nothing) then
                                                Dim ListID4441 as String
                                                ListID4441 = TransferSlipItemRet.ListID.GetValue()
                                        End If
                                        'Get value of NumberOfBaseUnits
                                        if ( not TransferSlipItemRet.NumberOfBaseUnits is nothing) then
                                                Dim NumberOfBaseUnits4442 as Double
                                                NumberOfBaseUnits4442 = TransferSlipItemRet.NumberOfBaseUnits.GetValue()
                                        End If
                                        'Get value of Qty
                                        if ( not TransferSlipItemRet.Qty is nothing) then
                                                Dim Qty4443 as Double
                                                Qty4443 = TransferSlipItemRet.Qty.GetValue()
                                        End If
                                        'Get value of SerialNumber
                                        if ( not TransferSlipItemRet.SerialNumber is nothing) then
                                                Dim SerialNumber4444 as String
                                                SerialNumber4444 = TransferSlipItemRet.SerialNumber.GetValue()
                                        End If
                                        'Get value of UnitOfMeasure
                                        if ( not TransferSlipItemRet.UnitOfMeasure is nothing) then
                                                Dim UnitOfMeasure4445 as String
                                                UnitOfMeasure4445 = TransferSlipItemRet.UnitOfMeasure.GetValue()
                                        End If
                                Next i4440
                        End If
                        if (not TransferSlipRet.DataExtRetList is nothing)
                                Dim i4446 as Integer
                                for i4446 = 0  to TransferSlipRet.DataExtRetList.Count - 1
                                        Dim DataExtRet as IDataExtRet
                                        DataExtRet = TransferSlipRet.DataExtRetList.GetAt(i4446)
                                        'Get value of OwnerID
                                        Dim OwnerID4447 as String
                                        OwnerID4447 = DataExtRet.OwnerID.GetValue()
                                        'Get value of DataExtName
                                        Dim DataExtName4448 as String
                                        DataExtName4448 = DataExtRet.DataExtName.GetValue()
                                        'Get value of DataExtType
                                        Dim DataExtType4449 as ENDataExtType
                                        DataExtType4449 = DataExtRet.DataExtType.GetValue()
                                        'Get value of DataExtValue
                                        Dim DataExtValue4450 as String
                                        DataExtValue4450 = DataExtRet.DataExtValue.GetValue()
                                Next i4446
                        End If
                End Sub




        End Class

  1
  2
  3
  4
  5
  6
  7
  8
  9
 10
 11
 12
 13
 14
 15
 16
 17
 18
 19
 20
 21
 22
 23
 24
 25
 26
 27
 28
 29
 30
 31
 32
 33
 34
 35
 36
 37
 38
 39
 40
 41
 42
 43
 44
 45
 46
 47
 48
 49
 50
 51
 52
 53
 54
 55
 56
 57
 58
 59
 60
 61
 62
 63
 64
 65
 66
 67
 68
 69
 70
 71
 72
 73
 74
 75
 76
 77
 78
 79
 80
 81
 82
 83
 84
 85
 86
 87
 88
 89
 90
 91
 92
 93
 94
 95
 96
 97
 98
 99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
//The following sample code is generated as an illustration of
//Creating requests and parsing responses ONLY
//This code is NOT intended to show best practices or ideal code
//Use at your most careful discretion

using System;
using System.Net;
using System.Drawing;
using System.Collections;
using System.ComponentModel;
using System.Windows.Forms;
using System.Data;
using System.IO;
using Interop.qbposfc4;

namespace com.intuit.idn.samples
{
        public class SampleTransferSlipQuery
        {
                public void  DoTransferSlipQuery()
                {
                        bool sessionBegun = false;
                        bool connectionOpen = false;
                        QBPOSSessionManager sessionManager = null;

                        try
                        {
                                //Create the session Manager object
                                sessionManager = new QBPOSSessionManager();

                                //Create the message set request object to hold our request
                                IMsgSetRequest requestMsgSet = sessionManager.CreateMsgSetRequest(4,0);
                                requestMsgSet.Attributes.OnError = ENRqOnError.roeContinue;

                                BuildTransferSlipQueryRq(requestMsgSet);

                                //Connect to QuickBooks and begin a session
                                sessionManager.OpenConnection("","Sample Code from OSR");
                                connectionOpen = true;
                                sessionManager.BeginSession("");
                                sessionBegun = true;

                                //Send the request and get the response from QuickBooks
                                IMsgSetResponse responseMsgSet = sessionManager.DoRequests(requestMsgSet);

                                //End the session and close the connection to QuickBooks
                                sessionManager.EndSession();
                                sessionBegun = false;
                                sessionManager.CloseConnection();
                                connectionOpen = false;

                                WalkTransferSlipQueryRs(responseMsgSet);
                        }
                        catch (Exception e)
                        {
                                MessageBox.Show(e.Message, "Error");
                                if (sessionBegun)
                                {
                                        sessionManager.EndSession();
                                }
                                if (connectionOpen)
                                {
                                        sessionManager.CloseConnection();
                                }
                        }
                }
                void BuildTransferSlipQueryRq(IMsgSetRequest requestMsgSet)
                {
                        ITransferSlipQuery TransferSlipQueryRq= requestMsgSet.AppendTransferSlipQueryRq();
                        //Set attributes
                        //Set field value for metaData
                        TransferSlipQueryRq.metaData.SetValue(ENmetaData.mdMetaDataAndResponseData);
                        //Set field value for iterator
                        TransferSlipQueryRq.iterator.SetValue(ENiterator.itStart);
                        //Set field value for iteratorID
                        TransferSlipQueryRq.iteratorID.SetValue("{D7355385-A17B-4f5d-B34D-F34C79C3E6FC}");
                        //Set field value for MaxReturned
                        TransferSlipQueryRq.MaxReturned.SetValue(6);
                        //Set field value for OwnerIDList
                        //May create more than one of these if needed
                        TransferSlipQueryRq.OwnerIDList.Add(Guid.NewGuid().ToString());
                        //Set field value for TxnID
                        TransferSlipQueryRq.TxnID.SetValue("200000-1011023419");
                        string ORTimeCreatedFiltersElementType4451 = "TimeCreatedFilter";
                        if (ORTimeCreatedFiltersElementType4451 == "TimeCreatedFilter")
                        {
                                //Set field value for MatchNumericCriterion
                                TransferSlipQueryRq.ORTimeCreatedFilters.TimeCreatedFilter.MatchNumericCriterion.SetValue(ENMatchNumericCriterion.mncLessThan);
                                //Set field value for TimeCreated
                                TransferSlipQueryRq.ORTimeCreatedFilters.TimeCreatedFilter.TimeCreated.SetValue(DateTime.Parse("12/15/2007 12:15:12"),false);
                        }
                        if (ORTimeCreatedFiltersElementType4451 == "TimeCreatedRangeFilter")
                        {
                                //Set field value for FromTimeCreated
                                TransferSlipQueryRq.ORTimeCreatedFilters.TimeCreatedRangeFilter.FromTimeCreated.SetValue(DateTime.Parse("12/15/2007 12:15:12"),false);
                                //Set field value for ToTimeCreated
                                TransferSlipQueryRq.ORTimeCreatedFilters.TimeCreatedRangeFilter.ToTimeCreated.SetValue(DateTime.Parse("12/15/2007 12:15:12"),false);
                        }
                        string ORTimeModifiedFiltersElementType4452 = "TimeModifiedFilter";
                        if (ORTimeModifiedFiltersElementType4452 == "TimeModifiedFilter")
                        {
                                //Set field value for MatchNumericCriterion
                                TransferSlipQueryRq.ORTimeModifiedFilters.TimeModifiedFilter.MatchNumericCriterion.SetValue(ENMatchNumericCriterion.mncLessThan);
                                //Set field value for TimeModified
                                TransferSlipQueryRq.ORTimeModifiedFilters.TimeModifiedFilter.TimeModified.SetValue(DateTime.Parse("12/15/2007 12:15:12"),false);
                        }
                        if (ORTimeModifiedFiltersElementType4452 == "TimeModifiedRangeFilter")
                        {
                                //Set field value for FromTimeModified
                                TransferSlipQueryRq.ORTimeModifiedFilters.TimeModifiedRangeFilter.FromTimeModified.SetValue(DateTime.Parse("12/15/2007 12:15:12"),false);
                                //Set field value for ToTimeModified
                                TransferSlipQueryRq.ORTimeModifiedFilters.TimeModifiedRangeFilter.ToTimeModified.SetValue(DateTime.Parse("12/15/2007 12:15:12"),false);
                        }
                        string ORAssociateFiltersElementType4453 = "AssociateFilter";
                        if (ORAssociateFiltersElementType4453 == "AssociateFilter")
                        {
                                //Set field value for MatchStringCriterion
                                TransferSlipQueryRq.ORAssociateFilters.AssociateFilter.MatchStringCriterion.SetValue(ENMatchStringCriterion.mscEqual);
                                //Set field value for Associate
                                TransferSlipQueryRq.ORAssociateFilters.AssociateFilter.Associate.SetValue("ab");
                        }
                        if (ORAssociateFiltersElementType4453 == "AssociateRangeFilter")
                        {
                                //Set field value for FromAssociate
                                TransferSlipQueryRq.ORAssociateFilters.AssociateRangeFilter.FromAssociate.SetValue("ab");
                                //Set field value for ToAssociate
                                TransferSlipQueryRq.ORAssociateFilters.AssociateRangeFilter.ToAssociate.SetValue("ab");
                        }
                        string ORCarrierFiltersElementType4454 = "CarrierFilter";
                        if (ORCarrierFiltersElementType4454 == "CarrierFilter")
                        {
                                //Set field value for MatchStringCriterion
                                TransferSlipQueryRq.ORCarrierFilters.CarrierFilter.MatchStringCriterion.SetValue(ENMatchStringCriterion.mscEqual);
                                //Set field value for Carrier
                                TransferSlipQueryRq.ORCarrierFilters.CarrierFilter.Carrier.SetValue("ab");
                        }
                        if (ORCarrierFiltersElementType4454 == "CarrierRangeFilter")
                        {
                                //Set field value for FromCarrier
                                TransferSlipQueryRq.ORCarrierFilters.CarrierRangeFilter.FromCarrier.SetValue("ab");
                                //Set field value for ToCarrier
                                TransferSlipQueryRq.ORCarrierFilters.CarrierRangeFilter.ToCarrier.SetValue("ab");
                        }
                        string ORCommentsFiltersElementType4455 = "CommentsFilter";
                        if (ORCommentsFiltersElementType4455 == "CommentsFilter")
                        {
                                //Set field value for MatchStringCriterion
                                TransferSlipQueryRq.ORCommentsFilters.CommentsFilter.MatchStringCriterion.SetValue(ENMatchStringCriterion.mscEqual);
                                //Set field value for Comments
                                TransferSlipQueryRq.ORCommentsFilters.CommentsFilter.Comments.SetValue("ab");
                        }
                        if (ORCommentsFiltersElementType4455 == "CommentsRangeFilter")
                        {
                                //Set field value for FromComments
                                TransferSlipQueryRq.ORCommentsFilters.CommentsRangeFilter.FromComments.SetValue("ab");
                                //Set field value for ToComments
                                TransferSlipQueryRq.ORCommentsFilters.CommentsRangeFilter.ToComments.SetValue("ab");
                        }
                        string ORFreightFiltersElementType4456 = "FreightFilter";
                        if (ORFreightFiltersElementType4456 == "FreightFilter")
                        {
                                //Set field value for MatchNumericCriterion
                                TransferSlipQueryRq.ORFreightFilters.FreightFilter.MatchNumericCriterion.SetValue(ENMatchNumericCriterion.mncLessThan);
                                //Set field value for Freight
                                TransferSlipQueryRq.ORFreightFilters.FreightFilter.Freight.SetValue(10.01);
                        }
                        if (ORFreightFiltersElementType4456 == "FreightRangeFilter")
                        {
                                //Set field value for FromFreight
                                TransferSlipQueryRq.ORFreightFilters.FreightRangeFilter.FromFreight.SetValue(10.01);
                                //Set field value for ToFreight
                                TransferSlipQueryRq.ORFreightFilters.FreightRangeFilter.ToFreight.SetValue(10.01);
                        }
                        string ORFromStoreNumberFiltersElementType4457 = "FromStoreNumberFilter";
                        if (ORFromStoreNumberFiltersElementType4457 == "FromStoreNumberFilter")
                        {
                                //Set field value for MatchNumericCriterion
                                TransferSlipQueryRq.ORFromStoreNumberFilters.FromStoreNumberFilter.MatchNumericCriterion.SetValue(ENMatchNumericCriterion.mncLessThan);
                                //Set field value for FromStoreNumber
                                TransferSlipQueryRq.ORFromStoreNumberFilters.FromStoreNumberFilter.FromStoreNumber.SetValue(6);
                        }
                        if (ORFromStoreNumberFiltersElementType4457 == "FromStoreNumberRangeFilter")
                        {
                                //Set field value for FromFromStoreNumber
                                TransferSlipQueryRq.ORFromStoreNumberFilters.FromStoreNumberRangeFilter.FromFromStoreNumber.SetValue(6);
                                //Set field value for ToFromStoreNumber
                                TransferSlipQueryRq.ORFromStoreNumberFilters.FromStoreNumberRangeFilter.ToFromStoreNumber.SetValue(6);
                        }
                        //Set field value for HistoryDocStatus
                        TransferSlipQueryRq.HistoryDocStatus.SetValue(ENHistoryDocStatus.hdsRegular);
                        string ORItemsCountFiltersElementType4458 = "ItemsCountFilter";
                        if (ORItemsCountFiltersElementType4458 == "ItemsCountFilter")
                        {
                                //Set field value for MatchNumericCriterion
                                TransferSlipQueryRq.ORItemsCountFilters.ItemsCountFilter.MatchNumericCriterion.SetValue(ENMatchNumericCriterion.mncLessThan);
                                //Set field value for ItemsCount
                                TransferSlipQueryRq.ORItemsCountFilters.ItemsCountFilter.ItemsCount.SetValue(6);
                        }
                        if (ORItemsCountFiltersElementType4458 == "ItemsCountRangeFilter")
                        {
                                //Set field value for FromItemsCount
                                TransferSlipQueryRq.ORItemsCountFilters.ItemsCountRangeFilter.FromItemsCount.SetValue(6);
                                //Set field value for ToItemsCount
                                TransferSlipQueryRq.ORItemsCountFilters.ItemsCountRangeFilter.ToItemsCount.SetValue(6);
                        }
                        //Set field value for QuickBooksFlag
                        TransferSlipQueryRq.QuickBooksFlag.SetValue(ENQuickBooksFlag.qbfNotPosted);
                        string ORSlipETAFiltersElementType4459 = "SlipETAFilter";
                        if (ORSlipETAFiltersElementType4459 == "SlipETAFilter")
                        {
                                //Set field value for MatchNumericCriterion
                                TransferSlipQueryRq.ORSlipETAFilters.SlipETAFilter.MatchNumericCriterion.SetValue(ENMatchNumericCriterion.mncLessThan);
                                //Set field value for SlipETA
                                TransferSlipQueryRq.ORSlipETAFilters.SlipETAFilter.SlipETA.SetValue(DateTime.Parse("12/15/2007"));
                        }
                        if (ORSlipETAFiltersElementType4459 == "SlipETARangeFilter")
                        {
                                //Set field value for FromSlipETA
                                TransferSlipQueryRq.ORSlipETAFilters.SlipETARangeFilter.FromSlipETA.SetValue(DateTime.Parse("12/15/2007"));
                                //Set field value for ToSlipETA
                                TransferSlipQueryRq.ORSlipETAFilters.SlipETARangeFilter.ToSlipETA.SetValue(DateTime.Parse("12/15/2007"));
                        }
                        string ORSlipNumberFiltersElementType4460 = "SlipNumberFilter";
                        if (ORSlipNumberFiltersElementType4460 == "SlipNumberFilter")
                        {
                                //Set field value for MatchNumericCriterion
                                TransferSlipQueryRq.ORSlipNumberFilters.SlipNumberFilter.MatchNumericCriterion.SetValue(ENMatchNumericCriterion.mncLessThan);
                                //Set field value for SlipNumber
                                TransferSlipQueryRq.ORSlipNumberFilters.SlipNumberFilter.SlipNumber.SetValue(6);
                        }
                        if (ORSlipNumberFiltersElementType4460 == "SlipNumberRangeFilter")
                        {
                                //Set field value for FromSlipNumber
                                TransferSlipQueryRq.ORSlipNumberFilters.SlipNumberRangeFilter.FromSlipNumber.SetValue(6);
                                //Set field value for ToSlipNumber
                                TransferSlipQueryRq.ORSlipNumberFilters.SlipNumberRangeFilter.ToSlipNumber.SetValue(6);
                        }
                        //Set field value for StoreExchangeStatus
                        TransferSlipQueryRq.StoreExchangeStatus.SetValue(ENStoreExchangeStatus.sesModified);
                        string ORToStoreNumberFiltersElementType4461 = "ToStoreNumberFilter";
                        if (ORToStoreNumberFiltersElementType4461 == "ToStoreNumberFilter")
                        {
                                //Set field value for MatchNumericCriterion
                                TransferSlipQueryRq.ORToStoreNumberFilters.ToStoreNumberFilter.MatchNumericCriterion.SetValue(ENMatchNumericCriterion.mncLessThan);
                                //Set field value for ToStoreNumber
                                TransferSlipQueryRq.ORToStoreNumberFilters.ToStoreNumberFilter.ToStoreNumber.SetValue(6);
                        }
                        if (ORToStoreNumberFiltersElementType4461 == "ToStoreNumberRangeFilter")
                        {
                                //Set field value for FromToStoreNumber
                                TransferSlipQueryRq.ORToStoreNumberFilters.ToStoreNumberRangeFilter.FromToStoreNumber.SetValue(6);
                                //Set field value for ToToStoreNumber
                                TransferSlipQueryRq.ORToStoreNumberFilters.ToStoreNumberRangeFilter.ToToStoreNumber.SetValue(6);
                        }
                        string ORTotalCostFiltersElementType4462 = "TotalCostFilter";
                        if (ORTotalCostFiltersElementType4462 == "TotalCostFilter")
                        {
                                //Set field value for MatchNumericCriterion
                                TransferSlipQueryRq.ORTotalCostFilters.TotalCostFilter.MatchNumericCriterion.SetValue(ENMatchNumericCriterion.mncLessThan);
                                //Set field value for TotalCost
                                TransferSlipQueryRq.ORTotalCostFilters.TotalCostFilter.TotalCost.SetValue(10.01);
                        }
                        if (ORTotalCostFiltersElementType4462 == "TotalCostRangeFilter")
                        {
                                //Set field value for FromTotalCost
                                TransferSlipQueryRq.ORTotalCostFilters.TotalCostRangeFilter.FromTotalCost.SetValue(10.01);
                                //Set field value for ToTotalCost
                                TransferSlipQueryRq.ORTotalCostFilters.TotalCostRangeFilter.ToTotalCost.SetValue(10.01);
                        }
                        string ORTotalQtyFiltersElementType4463 = "TotalQtyFilter";
                        if (ORTotalQtyFiltersElementType4463 == "TotalQtyFilter")
                        {
                                //Set field value for MatchNumericCriterion
                                TransferSlipQueryRq.ORTotalQtyFilters.TotalQtyFilter.MatchNumericCriterion.SetValue(ENMatchNumericCriterion.mncLessThan);
                                //Set field value for TotalQty
                                TransferSlipQueryRq.ORTotalQtyFilters.TotalQtyFilter.TotalQty.SetValue(2);
                        }
                        if (ORTotalQtyFiltersElementType4463 == "TotalQtyRangeFilter")
                        {
                                //Set field value for FromTotalQty
                                TransferSlipQueryRq.ORTotalQtyFilters.TotalQtyRangeFilter.FromTotalQty.SetValue(2);
                                //Set field value for ToTotalQty
                                TransferSlipQueryRq.ORTotalQtyFilters.TotalQtyRangeFilter.ToTotalQty.SetValue(2);
                        }
                        string ORTxnDateFiltersElementType4464 = "TxnDateFilter";
                        if (ORTxnDateFiltersElementType4464 == "TxnDateFilter")
                        {
                                //Set field value for MatchNumericCriterion
                                TransferSlipQueryRq.ORTxnDateFilters.TxnDateFilter.MatchNumericCriterion.SetValue(ENMatchNumericCriterion.mncLessThan);
                                //Set field value for TxnDate
                                TransferSlipQueryRq.ORTxnDateFilters.TxnDateFilter.TxnDate.SetValue(DateTime.Parse("12/15/2007"));
                        }
                        if (ORTxnDateFiltersElementType4464 == "TxnDateRangeFilter")
                        {
                                //Set field value for FromTxnDate
                                TransferSlipQueryRq.ORTxnDateFilters.TxnDateRangeFilter.FromTxnDate.SetValue(DateTime.Parse("12/15/2007"));
                                //Set field value for ToTxnDate
                                TransferSlipQueryRq.ORTxnDateFilters.TxnDateRangeFilter.ToTxnDate.SetValue(DateTime.Parse("12/15/2007"));
                        }
                        //Set field value for TxnState
                        TransferSlipQueryRq.TxnState.SetValue(ENTxnState.tsNormal);
                        string ORWorkstationFiltersElementType4465 = "WorkstationFilter";
                        if (ORWorkstationFiltersElementType4465 == "WorkstationFilter")
                        {
                                //Set field value for MatchNumericCriterion
                                TransferSlipQueryRq.ORWorkstationFilters.WorkstationFilter.MatchNumericCriterion.SetValue(ENMatchNumericCriterion.mncLessThan);
                                //Set field value for Workstation
                                TransferSlipQueryRq.ORWorkstationFilters.WorkstationFilter.Workstation.SetValue(6);
                        }
                        if (ORWorkstationFiltersElementType4465 == "WorkstationRangeFilter")
                        {
                                //Set field value for FromWorkstation
                                TransferSlipQueryRq.ORWorkstationFilters.WorkstationRangeFilter.FromWorkstation.SetValue(6);
                                //Set field value for ToWorkstation
                                TransferSlipQueryRq.ORWorkstationFilters.WorkstationRangeFilter.ToWorkstation.SetValue(6);
                        }
                        //Set field value for IncludeRetElementList
                        //May create more than one of these if needed
                        TransferSlipQueryRq.IncludeRetElementList.Add("ab");
                }




                void WalkTransferSlipQueryRs(IMsgSetResponse responseMsgSet)
                {
                        if (responseMsgSet == null) return;
                        IResponseList responseList = responseMsgSet.ResponseList;
                        if (responseList == null) return;
                        //if we sent only one request, there is only one response, we'll walk the list for this sample
                        for(int i=0; i < responseList.Count; i++)
                        {
                                IResponse response = responseList.GetAt(i);
                                //check the status code of the response, 0=ok, >0 is warning
                                if (response.StatusCode >= 0)
                                {
                                        //the request-specific response is in the details, make sure we have some
                                        if (response.Detail != null)
                                        {
                                                //make sure the response is the type we're expecting
                                                ENResponseType responseType = (ENResponseType)response.Type.GetValue();
                                                if (responseType == ENResponseType.rtTransferSlipQueryRs)
                                                {
                                                        //upcast to more specific type here, this is safe because we checked with response.Type check above
                                                        ITransferSlipRetList TransferSlipRet = (ITransferSlipRetList)response.Detail;
                                                        for(int z=0; z < TransferSlipRet.Count; z++)
                                                        {
                                                                WalkTransferSlipRet(TransferSlipRet.GetAt(z));
                                                        }
                                                }
                                        }
                                }
                        }
                }




                void WalkTransferSlipRet(ITransferSlipRet TransferSlipRet)
                {
                        if (TransferSlipRet == null) return;
                        //Go through all the elements of ITransferSlipRetList
                        //Get value of TxnID
                        if (TransferSlipRet.TxnID != null)
                        {
                                string TxnID4466 = (string)TransferSlipRet.TxnID.GetValue();
                        }
                        //Get value of TimeCreated
                        if (TransferSlipRet.TimeCreated != null)
                        {
                                DateTime TimeCreated4467 = (DateTime)TransferSlipRet.TimeCreated.GetValue();
                        }
                        //Get value of TimeModified
                        if (TransferSlipRet.TimeModified != null)
                        {
                                DateTime TimeModified4468 = (DateTime)TransferSlipRet.TimeModified.GetValue();
                        }
                        //Get value of Associate
                        if (TransferSlipRet.Associate != null)
                        {
                                string Associate4469 = (string)TransferSlipRet.Associate.GetValue();
                        }
                        //Get value of Carrier
                        if (TransferSlipRet.Carrier != null)
                        {
                                string Carrier4470 = (string)TransferSlipRet.Carrier.GetValue();
                        }
                        //Get value of Comments
                        if (TransferSlipRet.Comments != null)
                        {
                                string Comments4471 = (string)TransferSlipRet.Comments.GetValue();
                        }
                        //Get value of Freight
                        if (TransferSlipRet.Freight != null)
                        {
                                double Freight4472 = (double)TransferSlipRet.Freight.GetValue();
                        }
                        //Get value of FromStoreNumber
                        if (TransferSlipRet.FromStoreNumber != null)
                        {
                                int FromStoreNumber4473 = (int)TransferSlipRet.FromStoreNumber.GetValue();
                        }
                        //Get value of HistoryDocStatus
                        if (TransferSlipRet.HistoryDocStatus != null)
                        {
                                ENHistoryDocStatus HistoryDocStatus4474 = (ENHistoryDocStatus)TransferSlipRet.HistoryDocStatus.GetValue();
                        }
                        //Get value of ItemsCount
                        if (TransferSlipRet.ItemsCount != null)
                        {
                                int ItemsCount4475 = (int)TransferSlipRet.ItemsCount.GetValue();
                        }
                        //Get value of QuickBooksFlag
                        if (TransferSlipRet.QuickBooksFlag != null)
                        {
                                ENQuickBooksFlag QuickBooksFlag4476 = (ENQuickBooksFlag)TransferSlipRet.QuickBooksFlag.GetValue();
                        }
                        //Get value of SlipETA
                        if (TransferSlipRet.SlipETA != null)
                        {
                                DateTime SlipETA4477 = (DateTime)TransferSlipRet.SlipETA.GetValue();
                        }
                        //Get value of SlipNumber
                        if (TransferSlipRet.SlipNumber != null)
                        {
                                int SlipNumber4478 = (int)TransferSlipRet.SlipNumber.GetValue();
                        }
                        //Get value of StoreExchangeStatus
                        if (TransferSlipRet.StoreExchangeStatus != null)
                        {
                                ENStoreExchangeStatus StoreExchangeStatus4479 = (ENStoreExchangeStatus)TransferSlipRet.StoreExchangeStatus.GetValue();
                        }
                        //Get value of ToStoreNumber
                        if (TransferSlipRet.ToStoreNumber != null)
                        {
                                int ToStoreNumber4480 = (int)TransferSlipRet.ToStoreNumber.GetValue();
                        }
                        //Get value of TotalCost
                        if (TransferSlipRet.TotalCost != null)
                        {
                                double TotalCost4481 = (double)TransferSlipRet.TotalCost.GetValue();
                        }
                        //Get value of TotalQty
                        if (TransferSlipRet.TotalQty != null)
                        {
                                int TotalQty4482 = (int)TransferSlipRet.TotalQty.GetValue();
                        }
                        //Get value of TxnDate
                        if (TransferSlipRet.TxnDate != null)
                        {
                                DateTime TxnDate4483 = (DateTime)TransferSlipRet.TxnDate.GetValue();
                        }
                        //Get value of TxnState
                        if (TransferSlipRet.TxnState != null)
                        {
                                ENTxnState TxnState4484 = (ENTxnState)TransferSlipRet.TxnState.GetValue();
                        }
                        //Get value of Workstation
                        if (TransferSlipRet.Workstation != null)
                        {
                                int Workstation4485 = (int)TransferSlipRet.Workstation.GetValue();
                        }
                        if (TransferSlipRet.TransferSlipItemRetList != null)
                        {
                                for (int i4486 = 0; i4486 < TransferSlipRet.TransferSlipItemRetList.Count; i4486++)
                                {
                                        ITransferSlipItemRet TransferSlipItemRet = TransferSlipRet.TransferSlipItemRetList.GetAt(i4486);
                                        //Get value of ListID
                                        if (TransferSlipItemRet.ListID != null)
                                        {
                                                string ListID4487 = (string)TransferSlipItemRet.ListID.GetValue();
                                        }
                                        //Get value of NumberOfBaseUnits
                                        if (TransferSlipItemRet.NumberOfBaseUnits != null)
                                        {
                                                int NumberOfBaseUnits4488 = (int)TransferSlipItemRet.NumberOfBaseUnits.GetValue();
                                        }
                                        //Get value of Qty
                                        if (TransferSlipItemRet.Qty != null)
                                        {
                                                int Qty4489 = (int)TransferSlipItemRet.Qty.GetValue();
                                        }
                                        //Get value of SerialNumber
                                        if (TransferSlipItemRet.SerialNumber != null)
                                        {
                                                string SerialNumber4490 = (string)TransferSlipItemRet.SerialNumber.GetValue();
                                        }
                                        //Get value of UnitOfMeasure
                                        if (TransferSlipItemRet.UnitOfMeasure != null)
                                        {
                                                string UnitOfMeasure4491 = (string)TransferSlipItemRet.UnitOfMeasure.GetValue();
                                        }
                                }
                        }
                        if (TransferSlipRet.DataExtRetList != null)
                        {
                                for (int i4492 = 0; i4492 < TransferSlipRet.DataExtRetList.Count; i4492++)
                                {
                                        IDataExtRet DataExtRet = TransferSlipRet.DataExtRetList.GetAt(i4492);
                                        //Get value of OwnerID
                                        string OwnerID4493 = (string)DataExtRet.OwnerID.GetValue();
                                        //Get value of DataExtName
                                        string DataExtName4494 = (string)DataExtRet.DataExtName.GetValue();
                                        //Get value of DataExtType
                                        ENDataExtType DataExtType4495 = (ENDataExtType)DataExtRet.DataExtType.GetValue();
                                        //Get value of DataExtValue
                                        string DataExtValue4496 = (string)DataExtRet.DataExtValue.GetValue();
                                }
                        }
                }




        }
}