├── Intacct.SDK.Tests ├── Functions │ ├── Company │ │ ├── File │ │ │ └── input.csv │ │ ├── SubscriptionListTest.cs │ │ ├── UserEffectivePermissionListTest.cs │ │ ├── ClassDeleteTest.cs │ │ └── ContactDeleteTest.cs │ ├── InventoryControl │ │ └── WarehouseTransferUpdateTest.cs │ ├── DataDeliveryService │ │ └── DdsObjectListTest.cs │ ├── Common │ │ └── Query │ │ │ └── QueryStringTest.cs │ ├── Projects │ │ ├── TaskDeleteTest.cs │ │ ├── ProjectDeleteTest.cs │ │ └── TimesheetDeleteTest.cs │ ├── AccountsPayable │ │ └── ApPaymentDeclineTest.cs │ ├── AccountsReceivable │ │ └── InvoiceLineTaxEntriesCreateTest.cs │ └── GeneralLedger │ │ └── AccountDeleteTest.cs ├── Credentials │ └── Ini │ │ ├── notdefault.ini │ │ └── default.ini ├── Xml │ ├── MockAbstractResponse.cs │ └── Request │ │ └── SessionAuthenticationTest.cs ├── RequestConfigTest.cs ├── Intacct.SDK.Tests.csproj └── ClientConfigTest.cs ├── .gitattributes ├── Intacct.SDK ├── Xml │ ├── IXmlObject.cs │ ├── Request │ │ └── IAuthentication.cs │ └── OfflineResponse.cs ├── Functions │ ├── Common │ │ ├── Query │ │ │ ├── ICondition.cs │ │ │ ├── IQuery.cs │ │ │ ├── Logical │ │ │ │ ├── ILogical.cs │ │ │ │ ├── AbstractLogical.cs │ │ │ │ ├── AndCondition.cs │ │ │ │ └── OrCondition.cs │ │ │ ├── Comparison │ │ │ │ ├── IComparison.cs │ │ │ │ ├── AbstractDecimal.cs │ │ │ │ ├── AbstractInteger.cs │ │ │ │ ├── AbstractNull.cs │ │ │ │ ├── AbstractString.cs │ │ │ │ ├── AbstractComparison.cs │ │ │ │ ├── AbstractDate.cs │ │ │ │ ├── AbstractDateTime.cs │ │ │ │ ├── AbstractListInteger.cs │ │ │ │ ├── AbstractListString.cs │ │ │ │ ├── EqualTo │ │ │ │ │ ├── EqualToDecimal.cs │ │ │ │ │ ├── EqualToInteger.cs │ │ │ │ │ ├── EqualToDate.cs │ │ │ │ │ ├── EqualToDateTime.cs │ │ │ │ │ ├── EqualToString.cs │ │ │ │ │ └── EqualToNull.cs │ │ │ │ ├── LessThan │ │ │ │ │ ├── LessThanDecimal.cs │ │ │ │ │ ├── LessThanInteger.cs │ │ │ │ │ ├── LessThanDate.cs │ │ │ │ │ ├── LessThanString.cs │ │ │ │ │ └── LessThanDateTime.cs │ │ │ │ ├── Like │ │ │ │ │ └── LikeString.cs │ │ │ │ ├── GreaterThan │ │ │ │ │ ├── GreaterThanDecimal.cs │ │ │ │ │ ├── GreaterThanInteger.cs │ │ │ │ │ ├── GreaterThanDate.cs │ │ │ │ │ ├── GreaterThanString.cs │ │ │ │ │ └── GreaterThanDateTime.cs │ │ │ │ ├── LessThanOrEqualTo │ │ │ │ │ ├── LessThanOrEqualToDecimal.cs │ │ │ │ │ ├── LessThanOrEqualToInteger.cs │ │ │ │ │ ├── LessThanOrEqualToDate.cs │ │ │ │ │ ├── LessThanOrEqualToString.cs │ │ │ │ │ └── LessThanOrEqualToDateTime.cs │ │ │ │ ├── AbstractDateTimeClass.cs │ │ │ │ ├── GreaterThanOrEqualTo │ │ │ │ │ ├── GreaterThanOrEqualToDecimal.cs │ │ │ │ │ ├── GreaterThanOrEqualToInteger.cs │ │ │ │ │ ├── GreaterThanOrEqualToDate.cs │ │ │ │ │ ├── GreaterThanOrEqualToString.cs │ │ │ │ │ └── GreaterThanOrEqualToDateTime.cs │ │ │ │ └── InList │ │ │ │ │ ├── InListInteger.cs │ │ │ │ │ └── InListString.cs │ │ │ ├── AbstractCondition.cs │ │ │ └── QueryString.cs │ │ ├── NewQuery │ │ │ ├── QueryFilter │ │ │ │ ├── IFilter.cs │ │ │ │ ├── OrOperator.cs │ │ │ │ └── AndOperator.cs │ │ │ ├── QueryOrderBy │ │ │ │ ├── IOrder.cs │ │ │ │ ├── OrderAscending.cs │ │ │ │ ├── OrderDescending.cs │ │ │ │ └── AbstractOrderDirection.cs │ │ │ ├── QuerySelect │ │ │ │ ├── ISelect.cs │ │ │ │ ├── Sum.cs │ │ │ │ ├── Count.cs │ │ │ │ ├── Average.cs │ │ │ │ ├── Maximum.cs │ │ │ │ ├── Minimum.cs │ │ │ │ └── Field.cs │ │ │ └── IQueryFunction.cs │ │ └── List │ │ │ ├── SortedField.cs │ │ │ ├── ExpressionFilter.cs │ │ │ └── LogicalFilter.cs │ ├── Company │ │ ├── IAttachment.cs │ │ ├── AbstractAttachmentsFolder.cs │ │ ├── AbstractClass.cs │ │ ├── SubscriptionList.cs │ │ ├── AbstractAttachments.cs │ │ ├── AbstractDepartment.cs │ │ ├── ClassDelete.cs │ │ ├── ContactListInfo.cs │ │ ├── AttachmentsDelete.cs │ │ ├── AllocationDelete.cs │ │ ├── ContactDelete.cs │ │ ├── LocationDelete.cs │ │ ├── DepartmentDelete.cs │ │ ├── AttachmentsFolderDelete.cs │ │ ├── AbstractAllocationLine.cs │ │ ├── UserEffectivePermissionList.cs │ │ ├── AbstractUser.cs │ │ └── AbstractAllocation.cs │ ├── AccountsPayable │ │ ├── IApPaymentDetail.cs │ │ ├── ApPaymentSend.cs │ │ ├── ApPaymentVoid.cs │ │ ├── ApPaymentApprove.cs │ │ ├── ApPaymentConfirm.cs │ │ ├── ApPaymentDelete.cs │ │ ├── AbstractBillSummary.cs │ │ ├── ApPaymentDecline.cs │ │ ├── AbstractApAdjustmentSummary.cs │ │ ├── ApPaymentDetailAdvance.cs │ │ ├── ApPaymentDetailNegativeBill.cs │ │ ├── ApPaymentDetailDebitMemo.cs │ │ ├── BillDelete.cs │ │ ├── VendorDelete.cs │ │ └── ApAdjustmentDelete.cs │ ├── GeneralLedger │ │ ├── AbstractStatisticalJournalEntry.cs │ │ ├── AbstractJournalEntry.cs │ │ ├── AbstractStatisticalAccount.cs │ │ ├── AbstractStatisticalJournalEntryLine.cs │ │ ├── AbstractJournalEntryLine.cs │ │ ├── AbstractAccount.cs │ │ ├── AccountDelete.cs │ │ ├── JournalEntryDelete.cs │ │ ├── StatisticalAccountDelete.cs │ │ └── StatisticalJournalEntryDelete.cs │ ├── AccountsReceivable │ │ ├── AbstractInvoiceSummary.cs │ │ ├── AbstractArAdjustmentSummary.cs │ │ ├── AbstractInvoiceLineTaxEntries.cs │ │ ├── AbstractArPaymentSummary.cs │ │ ├── ArPaymentItem.cs │ │ ├── InvoiceDelete.cs │ │ ├── ArAdjustmentDelete.cs │ │ ├── CustomerDelete.cs │ │ └── InvoiceLineTaxEntriesCreate.cs │ ├── EmployeeExpenses │ │ ├── AbstractExpenseReportSummary.cs │ │ ├── EmployeeDelete.cs │ │ ├── ExpenseReportDelete.cs │ │ ├── ExpenseAdjustmentDelete.cs │ │ └── ReimbursementRequestItem.cs │ ├── Projects │ │ ├── AbstractObservedPercentCompleted.cs │ │ ├── TaskDelete.cs │ │ ├── TimesheetDelete.cs │ │ ├── ProjectDelete.cs │ │ └── AbstractTimesheet.cs │ ├── IFunction.cs │ ├── InventoryControl │ │ ├── AbstractTransactionItemDetail.cs │ │ ├── ItemDelete.cs │ │ ├── WarehouseDelete.cs │ │ ├── InventoryTransactionDelete.cs │ │ └── WarehouseTransferDelete.cs │ ├── DataDeliveryService │ │ ├── DdsObjectList.cs │ │ └── DdsObjectDdlGet.cs │ ├── CashManagement │ │ └── AbstractDeposit.cs │ ├── ContractsRevMgmt │ │ ├── ContractDelete.cs │ │ └── ContractLineDelete.cs │ ├── GlobalConsolidations │ │ ├── AbstractConsolidation.cs │ │ └── ConsolidationEntity.cs │ ├── OrderEntry │ │ ├── OrderEntryTransactionDelete.cs │ │ └── RecurringOrderEntryTransactionDelete.cs │ ├── Purchasing │ │ └── PurchasingTransactionDelete.cs │ └── ApiSessionCreate.cs ├── Credentials │ └── ICredentials.cs └── Exceptions │ ├── IntacctException.cs │ └── ResultException.cs └── .github └── workflows ├── publish.yml └── dotnet-ci.yml /Intacct.SDK.Tests/Functions/Company/File/input.csv: -------------------------------------------------------------------------------- 1 | hello,world 2 | unit,test -------------------------------------------------------------------------------- /Intacct.SDK.Tests/Credentials/Ini/notdefault.ini: -------------------------------------------------------------------------------- 1 | [notdefault] 2 | sender_id = testsenderid 3 | sender_password = testsenderpass 4 | -------------------------------------------------------------------------------- /.gitattributes: -------------------------------------------------------------------------------- 1 | # Set the default behavior, in case people don't have core.autocrlf set. 2 | * text=auto 3 | 4 | # Leave out the following from the archive zip 5 | docs/ export-ignore 6 | -------------------------------------------------------------------------------- /Intacct.SDK.Tests/Xml/MockAbstractResponse.cs: -------------------------------------------------------------------------------- 1 | using System.IO; 2 | using Intacct.SDK.Xml; 3 | 4 | namespace Intacct.SDK.Tests.Xml 5 | { 6 | public class MockAbstractResponse : AbstractResponse 7 | { 8 | public MockAbstractResponse(Stream body) : base(body) 9 | { 10 | } 11 | } 12 | } -------------------------------------------------------------------------------- /Intacct.SDK.Tests/Credentials/Ini/default.ini: -------------------------------------------------------------------------------- 1 | [default] 2 | sender_id = defsenderid 3 | sender_password = defsenderpass 4 | company_id = defcompanyid 5 | user_id = defuserid 6 | user_password = defuserpass 7 | endpoint_url = https://unittest.intacct.com/ia/xml/xmlgw.phtml 8 | 9 | [unittest] 10 | company_id = inicompanyid 11 | user_id = iniuserid 12 | user_password = iniuserpass 13 | 14 | [anothertest] 15 | sender_id = inisenderid 16 | sender_password = inisenderpass 17 | endpoint_url = https://unittest.intacct.com/ia/xmlgw.phtml 18 | 19 | [entity] 20 | company_id = inicompanyid 21 | entity_id = inientityid 22 | user_id = iniuserid 23 | user_password = iniuserpass 24 | -------------------------------------------------------------------------------- /Intacct.SDK/Xml/IXmlObject.cs: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2022 Sage Intacct, Inc. 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"). You may not 5 | * use this file except in compliance with the License. You may obtain a copy 6 | * of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * or in the "LICENSE" file accompanying this file. This file is distributed on 11 | * an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either 12 | * express or implied. See the License for the specific language governing 13 | * permissions and limitations under the License. 14 | */ 15 | 16 | namespace Intacct.SDK.Xml 17 | { 18 | public interface IXmlObject 19 | { 20 | void WriteXml(ref IaXmlWriter xml); 21 | } 22 | } -------------------------------------------------------------------------------- /Intacct.SDK/Functions/Common/Query/ICondition.cs: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2022 Sage Intacct, Inc. 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"). You may not 5 | * use this file except in compliance with the License. You may obtain a copy 6 | * of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * or in the "LICENSE" file accompanying this file. This file is distributed on 11 | * an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either 12 | * express or implied. See the License for the specific language governing 13 | * permissions and limitations under the License. 14 | */ 15 | 16 | namespace Intacct.SDK.Functions.Common.Query 17 | { 18 | public interface ICondition : IQuery 19 | { 20 | 21 | } 22 | } -------------------------------------------------------------------------------- /Intacct.SDK/Functions/Common/Query/IQuery.cs: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2022 Sage Intacct, Inc. 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"). You may not 5 | * use this file except in compliance with the License. You may obtain a copy 6 | * of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * or in the "LICENSE" file accompanying this file. This file is distributed on 11 | * an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either 12 | * express or implied. See the License for the specific language governing 13 | * permissions and limitations under the License. 14 | */ 15 | 16 | namespace Intacct.SDK.Functions.Common.Query 17 | { 18 | public interface IQuery 19 | { 20 | string ToString(); 21 | } 22 | } -------------------------------------------------------------------------------- /Intacct.SDK/Functions/Common/Query/Logical/ILogical.cs: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2022 Sage Intacct, Inc. 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"). You may not 5 | * use this file except in compliance with the License. You may obtain a copy 6 | * of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * or in the "LICENSE" file accompanying this file. This file is distributed on 11 | * an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either 12 | * express or implied. See the License for the specific language governing 13 | * permissions and limitations under the License. 14 | */ 15 | 16 | namespace Intacct.SDK.Functions.Common.Query.Logical 17 | { 18 | public interface ILogical : ICondition 19 | { 20 | 21 | } 22 | } -------------------------------------------------------------------------------- /Intacct.SDK/Credentials/ICredentials.cs: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2022 Sage Intacct, Inc. 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"). You may not 5 | * use this file except in compliance with the License. You may obtain a copy 6 | * of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * or in the "LICENSE" file accompanying this file. This file is distributed on 11 | * an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either 12 | * express or implied. See the License for the specific language governing 13 | * permissions and limitations under the License. 14 | */ 15 | 16 | namespace Intacct.SDK.Credentials 17 | { 18 | public interface ICredentials 19 | { 20 | SenderCredentials SenderCredentials { get; set; } 21 | } 22 | } -------------------------------------------------------------------------------- /Intacct.SDK/Functions/Common/Query/Comparison/IComparison.cs: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2022 Sage Intacct, Inc. 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"). You may not 5 | * use this file except in compliance with the License. You may obtain a copy 6 | * of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * or in the "LICENSE" file accompanying this file. This file is distributed on 11 | * an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either 12 | * express or implied. See the License for the specific language governing 13 | * permissions and limitations under the License. 14 | */ 15 | 16 | namespace Intacct.SDK.Functions.Common.Query.Comparison 17 | { 18 | public interface IComparison : ICondition 19 | { 20 | 21 | } 22 | } -------------------------------------------------------------------------------- /Intacct.SDK/Functions/Common/Query/AbstractCondition.cs: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2022 Sage Intacct, Inc. 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"). You may not 5 | * use this file except in compliance with the License. You may obtain a copy 6 | * of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * or in the "LICENSE" file accompanying this file. This file is distributed on 11 | * an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either 12 | * express or implied. See the License for the specific language governing 13 | * permissions and limitations under the License. 14 | */ 15 | 16 | namespace Intacct.SDK.Functions.Common.Query 17 | { 18 | public abstract class AbstractCondition : ICondition 19 | { 20 | public bool Negate = false; 21 | } 22 | } -------------------------------------------------------------------------------- /Intacct.SDK/Xml/Request/IAuthentication.cs: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2022 Sage Intacct, Inc. 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"). You may not 5 | * use this file except in compliance with the License. You may obtain a copy 6 | * of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * or in the "LICENSE" file accompanying this file. This file is distributed on 11 | * an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either 12 | * express or implied. See the License for the specific language governing 13 | * permissions and limitations under the License. 14 | */ 15 | 16 | using System.Xml; 17 | 18 | namespace Intacct.SDK.Xml.Request 19 | { 20 | public interface IAuthentication : IXmlObject 21 | { 22 | new void WriteXml(ref IaXmlWriter xml); 23 | } 24 | } -------------------------------------------------------------------------------- /Intacct.SDK/Functions/Common/Query/Comparison/AbstractDecimal.cs: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2022 Sage Intacct, Inc. 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"). You may not 5 | * use this file except in compliance with the License. You may obtain a copy 6 | * of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * or in the "LICENSE" file accompanying this file. This file is distributed on 11 | * an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either 12 | * express or implied. See the License for the specific language governing 13 | * permissions and limitations under the License. 14 | */ 15 | 16 | namespace Intacct.SDK.Functions.Common.Query.Comparison 17 | { 18 | public abstract class AbstractDecimal : AbstractComparison 19 | { 20 | public decimal Value; 21 | } 22 | } -------------------------------------------------------------------------------- /Intacct.SDK/Functions/Common/Query/Comparison/AbstractInteger.cs: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2022 Sage Intacct, Inc. 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"). You may not 5 | * use this file except in compliance with the License. You may obtain a copy 6 | * of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * or in the "LICENSE" file accompanying this file. This file is distributed on 11 | * an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either 12 | * express or implied. See the License for the specific language governing 13 | * permissions and limitations under the License. 14 | */ 15 | 16 | namespace Intacct.SDK.Functions.Common.Query.Comparison 17 | { 18 | public abstract class AbstractInteger : AbstractComparison 19 | { 20 | public int Value; 21 | } 22 | } -------------------------------------------------------------------------------- /Intacct.SDK/Functions/Common/Query/Comparison/AbstractNull.cs: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2022 Sage Intacct, Inc. 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"). You may not 5 | * use this file except in compliance with the License. You may obtain a copy 6 | * of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * or in the "LICENSE" file accompanying this file. This file is distributed on 11 | * an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either 12 | * express or implied. See the License for the specific language governing 13 | * permissions and limitations under the License. 14 | */ 15 | 16 | namespace Intacct.SDK.Functions.Common.Query.Comparison 17 | { 18 | public abstract class AbstractNull : AbstractComparison 19 | { 20 | // No Value to see here 21 | } 22 | } -------------------------------------------------------------------------------- /Intacct.SDK/Functions/Common/Query/Comparison/AbstractString.cs: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2022 Sage Intacct, Inc. 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"). You may not 5 | * use this file except in compliance with the License. You may obtain a copy 6 | * of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * or in the "LICENSE" file accompanying this file. This file is distributed on 11 | * an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either 12 | * express or implied. See the License for the specific language governing 13 | * permissions and limitations under the License. 14 | */ 15 | 16 | namespace Intacct.SDK.Functions.Common.Query.Comparison 17 | { 18 | public abstract class AbstractString : AbstractComparison 19 | { 20 | public string Value; 21 | } 22 | } -------------------------------------------------------------------------------- /Intacct.SDK/Functions/Company/IAttachment.cs: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2022 Sage Intacct, Inc. 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"). You may not 5 | * use this file except in compliance with the License. You may obtain a copy 6 | * of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * or in the "LICENSE" file accompanying this file. This file is distributed on 11 | * an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either 12 | * express or implied. See the License for the specific language governing 13 | * permissions and limitations under the License. 14 | */ 15 | 16 | using Intacct.SDK.Xml; 17 | 18 | namespace Intacct.SDK.Functions.Company 19 | { 20 | public interface IAttachment : IXmlObject 21 | { 22 | new void WriteXml(ref IaXmlWriter xml); 23 | } 24 | } -------------------------------------------------------------------------------- /Intacct.SDK/Functions/Common/NewQuery/QueryFilter/IFilter.cs: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2022 Sage Intacct, Inc. 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"). You may not 5 | * use this file except in compliance with the License. You may obtain a copy 6 | * of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * or in the "LICENSE" file accompanying this file. This file is distributed on 11 | * an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either 12 | * express or implied. See the License for the specific language governing 13 | * permissions and limitations under the License. 14 | */ 15 | 16 | using Intacct.SDK.Xml; 17 | 18 | namespace Intacct.SDK.Functions.Common.NewQuery.QueryFilter 19 | { 20 | public interface IFilter 21 | { 22 | void WriteXml(ref IaXmlWriter xml); 23 | } 24 | } -------------------------------------------------------------------------------- /Intacct.SDK/Functions/Common/NewQuery/QueryOrderBy/IOrder.cs: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2022 Sage Intacct, Inc. 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"). You may not 5 | * use this file except in compliance with the License. You may obtain a copy 6 | * of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * or in the "LICENSE" file accompanying this file. This file is distributed on 11 | * an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either 12 | * express or implied. See the License for the specific language governing 13 | * permissions and limitations under the License. 14 | */ 15 | 16 | using Intacct.SDK.Xml; 17 | 18 | namespace Intacct.SDK.Functions.Common.NewQuery.QueryOrderBy 19 | { 20 | public interface IOrder 21 | { 22 | void WriteXml(ref IaXmlWriter xml); 23 | } 24 | } -------------------------------------------------------------------------------- /Intacct.SDK/Functions/Common/NewQuery/QuerySelect/ISelect.cs: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2022 Sage Intacct, Inc. 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"). You may not 5 | * use this file except in compliance with the License. You may obtain a copy 6 | * of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * or in the "LICENSE" file accompanying this file. This file is distributed on 11 | * an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either 12 | * express or implied. See the License for the specific language governing 13 | * permissions and limitations under the License. 14 | */ 15 | 16 | using Intacct.SDK.Xml; 17 | 18 | namespace Intacct.SDK.Functions.Common.NewQuery.QuerySelect 19 | { 20 | public interface ISelect 21 | { 22 | void WriteXml(ref IaXmlWriter xml); 23 | } 24 | } -------------------------------------------------------------------------------- /Intacct.SDK/Functions/AccountsPayable/IApPaymentDetail.cs: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2022 Sage Intacct, Inc. 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"). You may not 5 | * use this file except in compliance with the License. You may obtain a copy 6 | * of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * or in the "LICENSE" file accompanying this file. This file is distributed on 11 | * an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either 12 | * express or implied. See the License for the specific language governing 13 | * permissions and limitations under the License. 14 | */ 15 | 16 | using Intacct.SDK.Xml; 17 | 18 | namespace Intacct.SDK.Functions.AccountsPayable 19 | { 20 | public interface IApPaymentDetail : IXmlObject 21 | { 22 | new void WriteXml(ref IaXmlWriter xml); 23 | } 24 | } -------------------------------------------------------------------------------- /Intacct.SDK/Functions/Common/Query/Comparison/AbstractComparison.cs: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2022 Sage Intacct, Inc. 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"). You may not 5 | * use this file except in compliance with the License. You may obtain a copy 6 | * of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * or in the "LICENSE" file accompanying this file. This file is distributed on 11 | * an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either 12 | * express or implied. See the License for the specific language governing 13 | * permissions and limitations under the License. 14 | */ 15 | 16 | namespace Intacct.SDK.Functions.Common.Query.Comparison 17 | { 18 | public abstract class AbstractComparison : IComparison 19 | { 20 | public string Field; 21 | 22 | public bool Negate; 23 | } 24 | } -------------------------------------------------------------------------------- /.github/workflows/publish.yml: -------------------------------------------------------------------------------- 1 | name: Publish Package to nuget 2 | 3 | on: 4 | release: 5 | types: [created] 6 | 7 | jobs: 8 | build: 9 | env: 10 | BUILD_CONFIG: Release 11 | SOLUTION: 'intacct-sdk-net.sln' 12 | 13 | runs-on: ubuntu-latest 14 | 15 | steps: 16 | - uses: actions/checkout@v3 17 | 18 | - name: Setup NuGet 19 | uses: NuGet/setup-nuget@v1.0.5 20 | 21 | - name: Setup .NET 22 | uses: actions/setup-dotnet@v2 23 | with: 24 | dotnet-version: 6.x 25 | 26 | - name: Install dependencies 27 | run: dotnet restore 28 | 29 | - name: Build 30 | run: dotnet build $SOLUTION --configuration $BUILD_CONFIG --no-restore 31 | 32 | - name: Pack 33 | run: dotnet pack 34 | 35 | - name: Publish to NuGet 36 | run: nuget push **\*.nupkg -Source 'https://api.nuget.org/v3/index.json' -ApiKey ${{secrets.NUGET_API_KEY}} 37 | -------------------------------------------------------------------------------- /Intacct.SDK/Functions/Common/Query/Comparison/AbstractDate.cs: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2022 Sage Intacct, Inc. 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"). You may not 5 | * use this file except in compliance with the License. You may obtain a copy 6 | * of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * or in the "LICENSE" file accompanying this file. This file is distributed on 11 | * an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either 12 | * express or implied. See the License for the specific language governing 13 | * permissions and limitations under the License. 14 | */ 15 | 16 | namespace Intacct.SDK.Functions.Common.Query.Comparison 17 | { 18 | public abstract class AbstractDate : AbstractDateTimeClass 19 | { 20 | protected AbstractDate(string format = IaDateFormat) : base(format) 21 | { 22 | } 23 | } 24 | } -------------------------------------------------------------------------------- /Intacct.SDK/Functions/Common/Query/Comparison/AbstractDateTime.cs: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2022 Sage Intacct, Inc. 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"). You may not 5 | * use this file except in compliance with the License. You may obtain a copy 6 | * of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * or in the "LICENSE" file accompanying this file. This file is distributed on 11 | * an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either 12 | * express or implied. See the License for the specific language governing 13 | * permissions and limitations under the License. 14 | */ 15 | 16 | namespace Intacct.SDK.Functions.Common.Query.Comparison 17 | { 18 | public abstract class AbstractDateTime : AbstractDateTimeClass 19 | { 20 | protected AbstractDateTime(string format = IaDateTimeFormat) : base(format) 21 | { 22 | } 23 | } 24 | } -------------------------------------------------------------------------------- /Intacct.SDK/Functions/GeneralLedger/AbstractStatisticalJournalEntry.cs: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2022 Sage Intacct, Inc. 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"). You may not 5 | * use this file except in compliance with the License. You may obtain a copy 6 | * of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * or in the "LICENSE" file accompanying this file. This file is distributed on 11 | * an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either 12 | * express or implied. See the License for the specific language governing 13 | * permissions and limitations under the License. 14 | */ 15 | 16 | namespace Intacct.SDK.Functions.GeneralLedger 17 | { 18 | public abstract class AbstractStatisticalJournalEntry : AbstractGlBatch 19 | { 20 | protected AbstractStatisticalJournalEntry(string controlId = null) : base(controlId) 21 | { 22 | } 23 | } 24 | } -------------------------------------------------------------------------------- /Intacct.SDK.Tests/RequestConfigTest.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Text; 3 | using Xunit; 4 | 5 | namespace Intacct.SDK.Tests 6 | { 7 | public class RequestConfigTest 8 | { 9 | [Fact] 10 | public void ExecuteTest() 11 | { 12 | RequestConfig requestConfig = new RequestConfig() 13 | { 14 | ControlId = "unittest" 15 | }; 16 | 17 | Assert.Equal("unittest", requestConfig.ControlId); 18 | Assert.Equal(Encoding.GetEncoding("UTF-8"), requestConfig.Encoding); 19 | Assert.Equal(5, requestConfig.MaxRetries); 20 | Assert.Equal(TimeSpan.FromSeconds(300), requestConfig.MaxTimeout); 21 | Assert.Equal(new[] { 524 }, requestConfig.NoRetryServerErrorCodes); 22 | Assert.Equal("", requestConfig.PolicyId); 23 | Assert.False(requestConfig.Transaction); 24 | Assert.False(requestConfig.UniqueId); 25 | } 26 | } 27 | } -------------------------------------------------------------------------------- /Intacct.SDK/Functions/GeneralLedger/AbstractJournalEntry.cs: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2022 Sage Intacct, Inc. 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"). You may not 5 | * use this file except in compliance with the License. You may obtain a copy 6 | * of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * or in the "LICENSE" file accompanying this file. This file is distributed on 11 | * an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either 12 | * express or implied. See the License for the specific language governing 13 | * permissions and limitations under the License. 14 | */ 15 | 16 | namespace Intacct.SDK.Functions.GeneralLedger 17 | { 18 | public abstract class AbstractJournalEntry : AbstractGlBatch 19 | { 20 | 21 | public string SourceEntityId; 22 | 23 | protected AbstractJournalEntry(string controlId = null) : base(controlId) 24 | { 25 | } 26 | } 27 | } -------------------------------------------------------------------------------- /Intacct.SDK/Functions/GeneralLedger/AbstractStatisticalAccount.cs: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2022 Sage Intacct, Inc. 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"). You may not 5 | * use this file except in compliance with the License. You may obtain a copy 6 | * of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * or in the "LICENSE" file accompanying this file. This file is distributed on 11 | * an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either 12 | * express or implied. See the License for the specific language governing 13 | * permissions and limitations under the License. 14 | */ 15 | 16 | namespace Intacct.SDK.Functions.GeneralLedger 17 | { 18 | public abstract class AbstractStatisticalAccount : AbstractGlAccount 19 | { 20 | 21 | public string ReportType; 22 | 23 | protected AbstractStatisticalAccount(string controlId = null) : base(controlId) 24 | { 25 | } 26 | 27 | } 28 | } -------------------------------------------------------------------------------- /Intacct.SDK/Functions/Common/Query/Comparison/AbstractListInteger.cs: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2022 Sage Intacct, Inc. 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"). You may not 5 | * use this file except in compliance with the License. You may obtain a copy 6 | * of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * or in the "LICENSE" file accompanying this file. This file is distributed on 11 | * an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either 12 | * express or implied. See the License for the specific language governing 13 | * permissions and limitations under the License. 14 | */ 15 | 16 | using System.Collections.Generic; 17 | 18 | namespace Intacct.SDK.Functions.Common.Query.Comparison 19 | { 20 | public abstract class AbstractListInteger : AbstractComparison 21 | { 22 | public List ValuesList = new List( 23 | new List 24 | { 25 | } 26 | ); 27 | } 28 | } -------------------------------------------------------------------------------- /Intacct.SDK/Functions/Common/Query/Comparison/AbstractListString.cs: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2022 Sage Intacct, Inc. 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"). You may not 5 | * use this file except in compliance with the License. You may obtain a copy 6 | * of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * or in the "LICENSE" file accompanying this file. This file is distributed on 11 | * an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either 12 | * express or implied. See the License for the specific language governing 13 | * permissions and limitations under the License. 14 | */ 15 | 16 | using System.Collections.Generic; 17 | 18 | namespace Intacct.SDK.Functions.Common.Query.Comparison 19 | { 20 | public abstract class AbstractListString : AbstractComparison 21 | { 22 | public List ValuesList = new List( 23 | new List 24 | { 25 | } 26 | ); 27 | } 28 | } -------------------------------------------------------------------------------- /.github/workflows/dotnet-ci.yml: -------------------------------------------------------------------------------- 1 | name: Intacct .NET SDK CI 2 | 3 | on: 4 | push: 5 | branches: [ "master" ] 6 | pull_request: 7 | workflow_dispatch: 8 | 9 | jobs: 10 | build_and_test: 11 | runs-on: ubuntu-latest 12 | 13 | strategy: 14 | matrix: 15 | dotnet-version: ['3.1', '6.x'] 16 | 17 | name: .NET v${{ matrix.dotnet-version }} 18 | 19 | # Steps represent a sequence of tasks that will be executed as part of the job 20 | steps: 21 | - name: Checkout 22 | uses: actions/checkout@v3 23 | 24 | - name: Setup .NET ${{ matrix.dotnet-version }} 25 | uses: actions/setup-dotnet@v2 26 | with: 27 | dotnet-version: | 28 | 3.1 29 | 6.x 30 | 31 | - name: Install dependencies for .NET ${{ matrix.dotnet-version }} 32 | run: dotnet restore 33 | 34 | - name: Build 35 | run: dotnet build 36 | 37 | - name: Test 38 | run: dotnet test 39 | 40 | 41 | -------------------------------------------------------------------------------- /Intacct.SDK/Functions/Common/NewQuery/QuerySelect/Sum.cs: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2022 Sage Intacct, Inc. 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"). You may not 5 | * use this file except in compliance with the License. You may obtain a copy 6 | * of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * or in the "LICENSE" file accompanying this file. This file is distributed on 11 | * an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either 12 | * express or implied. See the License for the specific language governing 13 | * permissions and limitations under the License. 14 | */ 15 | 16 | namespace Intacct.SDK.Functions.Common.NewQuery.QuerySelect 17 | { 18 | public class Sum : AbstractSelectFunction 19 | { 20 | public Sum(string fieldName) : base(fieldName) 21 | { 22 | } 23 | 24 | protected override string GetFunctionName() 25 | { 26 | return AbstractSelectFunction.Sum; 27 | } 28 | } 29 | } -------------------------------------------------------------------------------- /Intacct.SDK/Functions/GeneralLedger/AbstractStatisticalJournalEntryLine.cs: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2022 Sage Intacct, Inc. 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"). You may not 5 | * use this file except in compliance with the License. You may obtain a copy 6 | * of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * or in the "LICENSE" file accompanying this file. This file is distributed on 11 | * an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either 12 | * express or implied. See the License for the specific language governing 13 | * permissions and limitations under the License. 14 | */ 15 | 16 | namespace Intacct.SDK.Functions.GeneralLedger 17 | { 18 | public abstract class AbstractStatisticalJournalEntryLine : AbstractGlEntry 19 | { 20 | 21 | public string StatAccountNumber; 22 | 23 | public decimal? Amount; 24 | 25 | protected AbstractStatisticalJournalEntryLine() 26 | { 27 | } 28 | 29 | } 30 | } -------------------------------------------------------------------------------- /Intacct.SDK/Functions/Common/NewQuery/QuerySelect/Count.cs: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2022 Sage Intacct, Inc. 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"). You may not 5 | * use this file except in compliance with the License. You may obtain a copy 6 | * of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * or in the "LICENSE" file accompanying this file. This file is distributed on 11 | * an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either 12 | * express or implied. See the License for the specific language governing 13 | * permissions and limitations under the License. 14 | */ 15 | 16 | namespace Intacct.SDK.Functions.Common.NewQuery.QuerySelect 17 | { 18 | public class Count : AbstractSelectFunction 19 | { 20 | public Count(string fieldName) : base(fieldName) 21 | { 22 | } 23 | 24 | protected override string GetFunctionName() 25 | { 26 | return AbstractSelectFunction.Count; 27 | } 28 | } 29 | } -------------------------------------------------------------------------------- /Intacct.SDK/Functions/AccountsPayable/ApPaymentSend.cs: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2022 Sage Intacct, Inc. 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"). You may not 5 | * use this file except in compliance with the License. You may obtain a copy 6 | * of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * or in the "LICENSE" file accompanying this file. This file is distributed on 11 | * an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either 12 | * express or implied. See the License for the specific language governing 13 | * permissions and limitations under the License. 14 | */ 15 | 16 | namespace Intacct.SDK.Functions.AccountsPayable 17 | { 18 | public class ApPaymentSend : AbstractApPaymentFunction 19 | { 20 | public ApPaymentSend(int recordNo, string controlId = null) : base(recordNo, controlId) 21 | { 22 | } 23 | 24 | protected override string GetFunction() 25 | { 26 | return Send; 27 | } 28 | } 29 | } -------------------------------------------------------------------------------- /Intacct.SDK/Functions/AccountsPayable/ApPaymentVoid.cs: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2022 Sage Intacct, Inc. 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"). You may not 5 | * use this file except in compliance with the License. You may obtain a copy 6 | * of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * or in the "LICENSE" file accompanying this file. This file is distributed on 11 | * an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either 12 | * express or implied. See the License for the specific language governing 13 | * permissions and limitations under the License. 14 | */ 15 | 16 | namespace Intacct.SDK.Functions.AccountsPayable 17 | { 18 | public class ApPaymentVoid : AbstractApPaymentFunction 19 | { 20 | public ApPaymentVoid(int recordNo, string controlId = null) : base(recordNo, controlId) 21 | { 22 | } 23 | 24 | protected override string GetFunction() 25 | { 26 | return Void; 27 | } 28 | } 29 | } -------------------------------------------------------------------------------- /Intacct.SDK/Functions/Common/NewQuery/QuerySelect/Average.cs: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2022 Sage Intacct, Inc. 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"). You may not 5 | * use this file except in compliance with the License. You may obtain a copy 6 | * of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * or in the "LICENSE" file accompanying this file. This file is distributed on 11 | * an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either 12 | * express or implied. See the License for the specific language governing 13 | * permissions and limitations under the License. 14 | */ 15 | 16 | namespace Intacct.SDK.Functions.Common.NewQuery.QuerySelect 17 | { 18 | public class Average : AbstractSelectFunction 19 | { 20 | public Average(string fieldName) : base(fieldName) 21 | { 22 | } 23 | 24 | protected override string GetFunctionName() 25 | { 26 | return AbstractSelectFunction.Average; 27 | } 28 | } 29 | } -------------------------------------------------------------------------------- /Intacct.SDK/Functions/Common/NewQuery/QuerySelect/Maximum.cs: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2022 Sage Intacct, Inc. 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"). You may not 5 | * use this file except in compliance with the License. You may obtain a copy 6 | * of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * or in the "LICENSE" file accompanying this file. This file is distributed on 11 | * an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either 12 | * express or implied. See the License for the specific language governing 13 | * permissions and limitations under the License. 14 | */ 15 | 16 | namespace Intacct.SDK.Functions.Common.NewQuery.QuerySelect 17 | { 18 | public class Maximum : AbstractSelectFunction 19 | { 20 | public Maximum(string fieldName) : base(fieldName) 21 | { 22 | } 23 | 24 | protected override string GetFunctionName() 25 | { 26 | return AbstractSelectFunction.Maximum; 27 | } 28 | } 29 | } -------------------------------------------------------------------------------- /Intacct.SDK/Functions/Common/NewQuery/QuerySelect/Minimum.cs: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2022 Sage Intacct, Inc. 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"). You may not 5 | * use this file except in compliance with the License. You may obtain a copy 6 | * of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * or in the "LICENSE" file accompanying this file. This file is distributed on 11 | * an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either 12 | * express or implied. See the License for the specific language governing 13 | * permissions and limitations under the License. 14 | */ 15 | 16 | namespace Intacct.SDK.Functions.Common.NewQuery.QuerySelect 17 | { 18 | public class Minimum : AbstractSelectFunction 19 | { 20 | public Minimum(string fieldName) : base(fieldName) 21 | { 22 | } 23 | 24 | protected override string GetFunctionName() 25 | { 26 | return AbstractSelectFunction.Minimum; 27 | } 28 | } 29 | } -------------------------------------------------------------------------------- /Intacct.SDK/Functions/AccountsPayable/ApPaymentApprove.cs: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2022 Sage Intacct, Inc. 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"). You may not 5 | * use this file except in compliance with the License. You may obtain a copy 6 | * of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * or in the "LICENSE" file accompanying this file. This file is distributed on 11 | * an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either 12 | * express or implied. See the License for the specific language governing 13 | * permissions and limitations under the License. 14 | */ 15 | 16 | namespace Intacct.SDK.Functions.AccountsPayable 17 | { 18 | public class ApPaymentApprove : AbstractApPaymentFunction 19 | { 20 | public ApPaymentApprove(int recordNo, string controlId = null) : base(recordNo, controlId) 21 | { 22 | } 23 | 24 | protected override string GetFunction() 25 | { 26 | return Approve; 27 | } 28 | } 29 | } -------------------------------------------------------------------------------- /Intacct.SDK/Functions/AccountsPayable/ApPaymentConfirm.cs: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2022 Sage Intacct, Inc. 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"). You may not 5 | * use this file except in compliance with the License. You may obtain a copy 6 | * of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * or in the "LICENSE" file accompanying this file. This file is distributed on 11 | * an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either 12 | * express or implied. See the License for the specific language governing 13 | * permissions and limitations under the License. 14 | */ 15 | 16 | namespace Intacct.SDK.Functions.AccountsPayable 17 | { 18 | public class ApPaymentConfirm : AbstractApPaymentFunction 19 | { 20 | public ApPaymentConfirm(int recordno, string controlId = null) : base(recordno, controlId) 21 | { 22 | } 23 | 24 | protected override string GetFunction() 25 | { 26 | return Confirm; 27 | } 28 | } 29 | } -------------------------------------------------------------------------------- /Intacct.SDK/Functions/AccountsPayable/ApPaymentDelete.cs: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2022 Sage Intacct, Inc. 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"). You may not 5 | * use this file except in compliance with the License. You may obtain a copy 6 | * of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * or in the "LICENSE" file accompanying this file. This file is distributed on 11 | * an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either 12 | * express or implied. See the License for the specific language governing 13 | * permissions and limitations under the License. 14 | */ 15 | 16 | namespace Intacct.SDK.Functions.AccountsPayable 17 | { 18 | public class ApPaymentDelete : AbstractApPaymentFunction 19 | { 20 | public ApPaymentDelete(int recordNo, string controlId = null) : base(recordNo, controlId) 21 | { 22 | } 23 | 24 | protected override string GetFunction() 25 | { 26 | return Delete; 27 | } 28 | } 29 | } -------------------------------------------------------------------------------- /Intacct.SDK/Functions/Common/List/SortedField.cs: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2022 Sage Intacct, Inc. 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"). You may not 5 | * use this file except in compliance with the License. You may obtain a copy 6 | * of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * or in the "LICENSE" file accompanying this file. This file is distributed on 11 | * an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either 12 | * express or implied. See the License for the specific language governing 13 | * permissions and limitations under the License. 14 | */ 15 | 16 | namespace Intacct.SDK.Functions.Common.List 17 | { 18 | 19 | public class SortedField 20 | { 21 | public string Name; 22 | public string Order = "asc"; 23 | 24 | public SortedField() { } 25 | public SortedField(string name) { this.Name = name; } 26 | public SortedField(string name, string order) { this.Name = name; this.Order = order; } 27 | 28 | } 29 | 30 | } 31 | -------------------------------------------------------------------------------- /Intacct.SDK/Functions/Common/Query/Logical/AbstractLogical.cs: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2022 Sage Intacct, Inc. 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"). You may not 5 | * use this file except in compliance with the License. You may obtain a copy 6 | * of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * or in the "LICENSE" file accompanying this file. This file is distributed on 11 | * an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either 12 | * express or implied. See the License for the specific language governing 13 | * permissions and limitations under the License. 14 | */ 15 | 16 | using System.Collections.Generic; 17 | 18 | namespace Intacct.SDK.Functions.Common.Query.Logical 19 | { 20 | public abstract class AbstractLogical : ILogical 21 | { 22 | public bool Negate = false; 23 | 24 | public List Conditions = new List( 25 | new List 26 | { 27 | } 28 | ); 29 | } 30 | } -------------------------------------------------------------------------------- /Intacct.SDK/Functions/Common/Query/QueryString.cs: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2022 Sage Intacct, Inc. 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"). You may not 5 | * use this file except in compliance with the License. You may obtain a copy 6 | * of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * or in the "LICENSE" file accompanying this file. This file is distributed on 11 | * an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either 12 | * express or implied. See the License for the specific language governing 13 | * permissions and limitations under the License. 14 | */ 15 | 16 | namespace Intacct.SDK.Functions.Common.Query 17 | { 18 | public class QueryString : IQuery 19 | { 20 | public string Query; 21 | 22 | public QueryString(string query = "") 23 | { 24 | Query = string.IsNullOrWhiteSpace(query) ? "" : query; 25 | } 26 | 27 | public override string ToString() 28 | { 29 | return Query; 30 | } 31 | } 32 | } -------------------------------------------------------------------------------- /Intacct.SDK/Functions/AccountsPayable/AbstractBillSummary.cs: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2022 Sage Intacct, Inc. 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"). You may not 5 | * use this file except in compliance with the License. You may obtain a copy 6 | * of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * or in the "LICENSE" file accompanying this file. This file is distributed on 11 | * an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either 12 | * express or implied. See the License for the specific language governing 13 | * permissions and limitations under the License. 14 | */ 15 | 16 | using System; 17 | 18 | namespace Intacct.SDK.Functions.AccountsPayable 19 | { 20 | public abstract class AbstractBillSummary : AbstractFunction 21 | { 22 | 23 | public int RecordNo; 24 | 25 | public string Title; 26 | 27 | public DateTime GlPostingDate; 28 | 29 | protected AbstractBillSummary(string controlId = null) : base(controlId) 30 | { 31 | } 32 | } 33 | } -------------------------------------------------------------------------------- /Intacct.SDK/Functions/AccountsPayable/ApPaymentDecline.cs: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2022 Sage Intacct, Inc. 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"). You may not 5 | * use this file except in compliance with the License. You may obtain a copy 6 | * of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * or in the "LICENSE" file accompanying this file. This file is distributed on 11 | * an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either 12 | * express or implied. See the License for the specific language governing 13 | * permissions and limitations under the License. 14 | */ 15 | 16 | using Intacct.SDK.Xml; 17 | 18 | namespace Intacct.SDK.Functions.AccountsPayable 19 | { 20 | public class ApPaymentDecline : AbstractApPaymentFunction 21 | { 22 | 23 | public ApPaymentDecline(int recordNo, string controlId = null) : base(recordNo, controlId) 24 | { 25 | } 26 | 27 | protected override string GetFunction() 28 | { 29 | return Decline; 30 | } 31 | } 32 | } -------------------------------------------------------------------------------- /Intacct.SDK/Functions/Company/AbstractAttachmentsFolder.cs: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2022 Sage Intacct, Inc. 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"). You may not 5 | * use this file except in compliance with the License. You may obtain a copy 6 | * of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * or in the "LICENSE" file accompanying this file. This file is distributed on 11 | * an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either 12 | * express or implied. See the License for the specific language governing 13 | * permissions and limitations under the License. 14 | */ 15 | 16 | namespace Intacct.SDK.Functions.Company 17 | { 18 | public abstract class AbstractAttachmentsFolder : AbstractFunction 19 | { 20 | 21 | public string FolderName; 22 | 23 | public string Description; 24 | 25 | public string ParentFolderName; 26 | 27 | protected AbstractAttachmentsFolder(string controlId = null) : base(controlId) 28 | { 29 | } 30 | 31 | } 32 | } -------------------------------------------------------------------------------- /Intacct.SDK.Tests/Functions/InventoryControl/WarehouseTransferUpdateTest.cs: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2022 Sage Intacct, Inc. 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"). You may not 5 | * use this file except in compliance with the License. You may obtain a copy 6 | * of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * or in the "LICENSE" file accompanying this file. This file is distributed on 11 | * an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either 12 | * express or implied. See the License for the specific language governing 13 | * permissions and limitations under the License. 14 | */ 15 | 16 | using System.Collections.Generic; 17 | using System.IO; 18 | using System.Text; 19 | using System.Xml; 20 | using Intacct.SDK.Functions.InventoryControl; 21 | using Intacct.SDK.Functions; 22 | using Intacct.SDK.Tests.Xml; 23 | using Intacct.SDK.Xml; 24 | using Xunit; 25 | 26 | namespace Intacct.SDK.Tests.Functions.InventoryControl 27 | { 28 | public class WarehouseTransferUpdateTest 29 | { 30 | 31 | } 32 | } -------------------------------------------------------------------------------- /Intacct.SDK/Exceptions/IntacctException.cs: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2022 Sage Intacct, Inc. 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"). You may not 5 | * use this file except in compliance with the License. You may obtain a copy 6 | * of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * or in the "LICENSE" file accompanying this file. This file is distributed on 11 | * an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either 12 | * express or implied. See the License for the specific language governing 13 | * permissions and limitations under the License. 14 | */ 15 | 16 | using System; 17 | 18 | namespace Intacct.SDK.Exceptions 19 | { 20 | public class IntacctException : Exception 21 | { 22 | public IntacctException() 23 | { 24 | } 25 | 26 | public IntacctException(string message) : base(message) 27 | { 28 | } 29 | 30 | public IntacctException(string message, Exception innerException) : base(message, innerException) 31 | { 32 | } 33 | } 34 | } -------------------------------------------------------------------------------- /Intacct.SDK/Functions/AccountsReceivable/AbstractInvoiceSummary.cs: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2022 Sage Intacct, Inc. 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"). You may not 5 | * use this file except in compliance with the License. You may obtain a copy 6 | * of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * or in the "LICENSE" file accompanying this file. This file is distributed on 11 | * an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either 12 | * express or implied. See the License for the specific language governing 13 | * permissions and limitations under the License. 14 | */ 15 | 16 | using System; 17 | 18 | namespace Intacct.SDK.Functions.AccountsReceivable 19 | { 20 | public abstract class AbstractInvoiceSummary : AbstractFunction 21 | { 22 | 23 | public int? RecordNo; 24 | 25 | public string Title; 26 | 27 | public DateTime? GlPostingDate; 28 | 29 | protected AbstractInvoiceSummary(string controlId = null) : base(controlId) 30 | { 31 | } 32 | } 33 | } -------------------------------------------------------------------------------- /Intacct.SDK/Functions/AccountsReceivable/AbstractArAdjustmentSummary.cs: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2022 Sage Intacct, Inc. 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"). You may not 5 | * use this file except in compliance with the License. You may obtain a copy 6 | * of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * or in the "LICENSE" file accompanying this file. This file is distributed on 11 | * an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either 12 | * express or implied. See the License for the specific language governing 13 | * permissions and limitations under the License. 14 | */ 15 | 16 | using System; 17 | 18 | namespace Intacct.SDK.Functions.AccountsReceivable 19 | { 20 | public abstract class AbstractArAdjustmentSummary : AbstractFunction 21 | { 22 | 23 | public string AccountLabel; 24 | 25 | public string Title; 26 | 27 | public DateTime? GlPostingDate; 28 | 29 | protected AbstractArAdjustmentSummary(string controlId = null) : base(controlId) 30 | { 31 | } 32 | } 33 | } -------------------------------------------------------------------------------- /Intacct.SDK/Functions/Common/NewQuery/QueryOrderBy/OrderAscending.cs: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2022 Sage Intacct, Inc. 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"). You may not 5 | * use this file except in compliance with the License. You may obtain a copy 6 | * of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * or in the "LICENSE" file accompanying this file. This file is distributed on 11 | * an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either 12 | * express or implied. See the License for the specific language governing 13 | * permissions and limitations under the License. 14 | */ 15 | 16 | namespace Intacct.SDK.Functions.Common.NewQuery.QueryOrderBy 17 | { 18 | public class OrderAscending : AbstractOrderDirection 19 | { 20 | private const string Ascending = "ascending"; 21 | 22 | public OrderAscending(string fieldName) : base(fieldName) 23 | { 24 | } 25 | 26 | protected override string GetDirection() 27 | { 28 | return Ascending; 29 | } 30 | } 31 | } -------------------------------------------------------------------------------- /Intacct.SDK/Functions/AccountsPayable/AbstractApAdjustmentSummary.cs: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2022 Sage Intacct, Inc. 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"). You may not 5 | * use this file except in compliance with the License. You may obtain a copy 6 | * of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * or in the "LICENSE" file accompanying this file. This file is distributed on 11 | * an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either 12 | * express or implied. See the License for the specific language governing 13 | * permissions and limitations under the License. 14 | */ 15 | 16 | using System; 17 | 18 | namespace Intacct.SDK.Functions.AccountsPayable 19 | { 20 | public abstract class AbstractApAdjustmentSummary : AbstractFunction 21 | { 22 | 23 | public int? RecordNo; 24 | 25 | public string Title; 26 | 27 | public DateTime GlPostingDate; 28 | 29 | protected AbstractApAdjustmentSummary(string controlId = null) : base(controlId) 30 | { 31 | } 32 | } 33 | } -------------------------------------------------------------------------------- /Intacct.SDK/Functions/Common/NewQuery/QueryFilter/OrOperator.cs: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2022 Sage Intacct, Inc. 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"). You may not 5 | * use this file except in compliance with the License. You may obtain a copy 6 | * of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * or in the "LICENSE" file accompanying this file. This file is distributed on 11 | * an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either 12 | * express or implied. See the License for the specific language governing 13 | * permissions and limitations under the License. 14 | */ 15 | 16 | using System.Collections.Generic; 17 | 18 | namespace Intacct.SDK.Functions.Common.NewQuery.QueryFilter 19 | { 20 | public class OrOperator : AbstractOperator 21 | { 22 | private const string Or = "or"; 23 | 24 | public OrOperator(List filters) : base(filters) 25 | { 26 | } 27 | 28 | protected override string GetOperator() 29 | { 30 | return Or; 31 | } 32 | } 33 | } -------------------------------------------------------------------------------- /Intacct.SDK/Functions/Common/NewQuery/QueryOrderBy/OrderDescending.cs: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2022 Sage Intacct, Inc. 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"). You may not 5 | * use this file except in compliance with the License. You may obtain a copy 6 | * of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * or in the "LICENSE" file accompanying this file. This file is distributed on 11 | * an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either 12 | * express or implied. See the License for the specific language governing 13 | * permissions and limitations under the License. 14 | */ 15 | 16 | namespace Intacct.SDK.Functions.Common.NewQuery.QueryOrderBy 17 | { 18 | public class OrderDescending : AbstractOrderDirection 19 | { 20 | private const string Descending = "descending"; 21 | 22 | public OrderDescending(string fieldName) : base(fieldName) 23 | { 24 | } 25 | 26 | protected override string GetDirection() 27 | { 28 | return Descending; 29 | } 30 | } 31 | } -------------------------------------------------------------------------------- /Intacct.SDK/Functions/Common/NewQuery/QueryFilter/AndOperator.cs: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2022 Sage Intacct, Inc. 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"). You may not 5 | * use this file except in compliance with the License. You may obtain a copy 6 | * of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * or in the "LICENSE" file accompanying this file. This file is distributed on 11 | * an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either 12 | * express or implied. See the License for the specific language governing 13 | * permissions and limitations under the License. 14 | */ 15 | 16 | using System.Collections.Generic; 17 | 18 | namespace Intacct.SDK.Functions.Common.NewQuery.QueryFilter 19 | { 20 | public class AndOperator : AbstractOperator 21 | { 22 | private const string And = "and"; 23 | 24 | public AndOperator(List filters) : base(filters) 25 | { 26 | } 27 | 28 | protected override string GetOperator() 29 | { 30 | return And; 31 | } 32 | } 33 | } -------------------------------------------------------------------------------- /Intacct.SDK/Functions/EmployeeExpenses/AbstractExpenseReportSummary.cs: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2022 Sage Intacct, Inc. 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"). You may not 5 | * use this file except in compliance with the License. You may obtain a copy 6 | * of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * or in the "LICENSE" file accompanying this file. This file is distributed on 11 | * an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either 12 | * express or implied. See the License for the specific language governing 13 | * permissions and limitations under the License. 14 | */ 15 | 16 | using System; 17 | 18 | namespace Intacct.SDK.Functions.EmployeeExpenses 19 | { 20 | public abstract class AbstractExpenseReportSummary : AbstractFunction 21 | { 22 | 23 | public int? RecordNo; 24 | 25 | public string Title; 26 | 27 | public DateTime? GlPostingDate; 28 | 29 | protected AbstractExpenseReportSummary(string controlId = null) : base(controlId) 30 | { 31 | } 32 | 33 | } 34 | } -------------------------------------------------------------------------------- /Intacct.SDK/Functions/Projects/AbstractObservedPercentCompleted.cs: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2022 Sage Intacct, Inc. 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"). You may not 5 | * use this file except in compliance with the License. You may obtain a copy 6 | * of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * or in the "LICENSE" file accompanying this file. This file is distributed on 11 | * an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either 12 | * express or implied. See the License for the specific language governing 13 | * permissions and limitations under the License. 14 | */ 15 | 16 | using System; 17 | 18 | namespace Intacct.SDK.Functions.Projects 19 | { 20 | public abstract class AbstractObservedPercentCompleted : AbstractFunction 21 | { 22 | 23 | public DateTime? AsOfDate; 24 | 25 | public decimal ObservedPercentComplete; 26 | 27 | public string Description; 28 | 29 | protected AbstractObservedPercentCompleted(string controlId = null) : base(controlId) 30 | { 31 | } 32 | } 33 | } -------------------------------------------------------------------------------- /Intacct.SDK.Tests/Xml/Request/SessionAuthenticationTest.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.IO; 3 | using System.Text; 4 | using System.Xml; 5 | using Intacct.SDK.Tests.Functions; 6 | using Intacct.SDK.Xml; 7 | using Intacct.SDK.Xml.Request; 8 | using Xunit; 9 | 10 | namespace Intacct.SDK.Tests.Xml.Request 11 | { 12 | public class SessionAuthenticationTest : XmlObjectTestHelper 13 | { 14 | [Fact] 15 | public void WriteXmlTest() 16 | { 17 | string expected = @" 18 | 19 | testsessionid.. 20 | "; 21 | 22 | SessionAuthentication sessionAuth = new SessionAuthentication("testsessionid.."); 23 | 24 | this.CompareXml(expected, sessionAuth); 25 | } 26 | 27 | [Fact] 28 | public void InvalidSessionIdTest() 29 | { 30 | var ex = Record.Exception(() => new SessionAuthentication("")); 31 | Assert.IsType(ex); 32 | Assert.Equal("Session ID is required and cannot be blank", ex.Message); 33 | } 34 | } 35 | } -------------------------------------------------------------------------------- /Intacct.SDK/Functions/Common/Query/Logical/AndCondition.cs: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2022 Sage Intacct, Inc. 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"). You may not 5 | * use this file except in compliance with the License. You may obtain a copy 6 | * of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * or in the "LICENSE" file accompanying this file. This file is distributed on 11 | * an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either 12 | * express or implied. See the License for the specific language governing 13 | * permissions and limitations under the License. 14 | */ 15 | 16 | namespace Intacct.SDK.Functions.Common.Query.Logical 17 | { 18 | public class AndCondition : AbstractLogical 19 | { 20 | public override string ToString() 21 | { 22 | string clause = ""; 23 | if (Negate == true) 24 | { 25 | clause = "NOT "; 26 | } 27 | clause = clause + "(" + string.Join(" AND ", Conditions) + ")"; 28 | 29 | return clause; 30 | } 31 | } 32 | } -------------------------------------------------------------------------------- /Intacct.SDK/Functions/Common/Query/Logical/OrCondition.cs: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2022 Sage Intacct, Inc. 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"). You may not 5 | * use this file except in compliance with the License. You may obtain a copy 6 | * of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * or in the "LICENSE" file accompanying this file. This file is distributed on 11 | * an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either 12 | * express or implied. See the License for the specific language governing 13 | * permissions and limitations under the License. 14 | */ 15 | 16 | namespace Intacct.SDK.Functions.Common.Query.Logical 17 | { 18 | public class OrCondition : AbstractLogical 19 | { 20 | public override string ToString() 21 | { 22 | string clause = ""; 23 | if (Negate == true) 24 | { 25 | clause = "NOT "; 26 | } 27 | clause = clause + "(" + string.Join(" OR ", Conditions) + ")"; 28 | 29 | return clause; 30 | } 31 | } 32 | } -------------------------------------------------------------------------------- /Intacct.SDK.Tests/Intacct.SDK.Tests.csproj: -------------------------------------------------------------------------------- 1 | 2 | 3 | net6;net8 4 | false 5 | 6 | 7 | 8 | 9 | 10 | runtime; build; native; contentfiles; analyzers; buildtransitive 11 | all 12 | 13 | 14 | 15 | 16 | Always 17 | 18 | 19 | 20 | 21 | Always 22 | 23 | 24 | 25 | 26 | 27 | -------------------------------------------------------------------------------- /Intacct.SDK/Functions/Common/Query/Comparison/EqualTo/EqualToDecimal.cs: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2022 Sage Intacct, Inc. 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"). You may not 5 | * use this file except in compliance with the License. You may obtain a copy 6 | * of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * or in the "LICENSE" file accompanying this file. This file is distributed on 11 | * an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either 12 | * express or implied. See the License for the specific language governing 13 | * permissions and limitations under the License. 14 | */ 15 | 16 | namespace Intacct.SDK.Functions.Common.Query.Comparison.EqualTo 17 | { 18 | public class EqualToDecimal : AbstractDecimal 19 | { 20 | public override string ToString() 21 | { 22 | string clause = ""; 23 | if (Negate == true) 24 | { 25 | clause = "NOT "; 26 | } 27 | 28 | clause = clause + Field + " = " + Value.ToString(); 29 | 30 | return clause; 31 | } 32 | } 33 | } -------------------------------------------------------------------------------- /Intacct.SDK/Functions/Common/Query/Comparison/EqualTo/EqualToInteger.cs: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2022 Sage Intacct, Inc. 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"). You may not 5 | * use this file except in compliance with the License. You may obtain a copy 6 | * of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * or in the "LICENSE" file accompanying this file. This file is distributed on 11 | * an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either 12 | * express or implied. See the License for the specific language governing 13 | * permissions and limitations under the License. 14 | */ 15 | 16 | namespace Intacct.SDK.Functions.Common.Query.Comparison.EqualTo 17 | { 18 | public class EqualToInteger : AbstractInteger 19 | { 20 | public override string ToString() 21 | { 22 | string clause = ""; 23 | if (Negate == true) 24 | { 25 | clause = "NOT "; 26 | } 27 | 28 | clause = clause + Field + " = " + Value.ToString(); 29 | 30 | return clause; 31 | } 32 | } 33 | } -------------------------------------------------------------------------------- /Intacct.SDK.Tests/ClientConfigTest.cs: -------------------------------------------------------------------------------- 1 | using Intacct.SDK.Logging; 2 | using Microsoft.Extensions.Logging; 3 | using Xunit; 4 | 5 | namespace Intacct.SDK.Tests 6 | { 7 | public class ClientConfigTest 8 | { 9 | [Fact] 10 | public void ExecuteTest() 11 | { 12 | ClientConfig clientConfig = new ClientConfig(); 13 | 14 | Assert.Null(clientConfig.ProfileFile); 15 | Assert.Null(clientConfig.ProfileName); 16 | Assert.Null(clientConfig.EndpointUrl); 17 | Assert.Null(clientConfig.SenderId); 18 | Assert.Null(clientConfig.SenderPassword); 19 | Assert.Null(clientConfig.SessionId); 20 | Assert.Null(clientConfig.CompanyId); 21 | Assert.Null(clientConfig.EntityId); 22 | Assert.Null(clientConfig.UserId); 23 | Assert.Null(clientConfig.UserPassword); 24 | Assert.Null(clientConfig.Credentials); 25 | Assert.Null(clientConfig.Logger); 26 | Assert.Equal(LogLevel.Debug, clientConfig.LogLevel); 27 | Assert.IsType(clientConfig.LogMessageFormatter); 28 | } 29 | } 30 | } -------------------------------------------------------------------------------- /Intacct.SDK/Functions/Common/Query/Comparison/EqualTo/EqualToDate.cs: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2022 Sage Intacct, Inc. 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"). You may not 5 | * use this file except in compliance with the License. You may obtain a copy 6 | * of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * or in the "LICENSE" file accompanying this file. This file is distributed on 11 | * an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either 12 | * express or implied. See the License for the specific language governing 13 | * permissions and limitations under the License. 14 | */ 15 | 16 | namespace Intacct.SDK.Functions.Common.Query.Comparison.EqualTo 17 | { 18 | public class EqualToDate : AbstractDate 19 | { 20 | public override string ToString() 21 | { 22 | string clause = ""; 23 | if (Negate == true) 24 | { 25 | clause = "NOT "; 26 | } 27 | 28 | clause = clause + Field + " = '" + Value.ToString(Format) + "'"; 29 | 30 | return clause; 31 | } 32 | } 33 | } -------------------------------------------------------------------------------- /Intacct.SDK/Functions/Common/Query/Comparison/LessThan/LessThanDecimal.cs: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2022 Sage Intacct, Inc. 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"). You may not 5 | * use this file except in compliance with the License. You may obtain a copy 6 | * of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * or in the "LICENSE" file accompanying this file. This file is distributed on 11 | * an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either 12 | * express or implied. See the License for the specific language governing 13 | * permissions and limitations under the License. 14 | */ 15 | 16 | namespace Intacct.SDK.Functions.Common.Query.Comparison.LessThan 17 | { 18 | public class LessThanDecimal : AbstractDecimal 19 | { 20 | public override string ToString() 21 | { 22 | string clause = ""; 23 | if (Negate == true) 24 | { 25 | clause = "NOT "; 26 | } 27 | 28 | clause = clause + Field + " < " + Value.ToString(); 29 | 30 | return clause; 31 | } 32 | } 33 | } -------------------------------------------------------------------------------- /Intacct.SDK/Functions/Common/Query/Comparison/LessThan/LessThanInteger.cs: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2022 Sage Intacct, Inc. 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"). You may not 5 | * use this file except in compliance with the License. You may obtain a copy 6 | * of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * or in the "LICENSE" file accompanying this file. This file is distributed on 11 | * an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either 12 | * express or implied. See the License for the specific language governing 13 | * permissions and limitations under the License. 14 | */ 15 | 16 | namespace Intacct.SDK.Functions.Common.Query.Comparison.LessThan 17 | { 18 | public class LessThanInteger : AbstractInteger 19 | { 20 | public override string ToString() 21 | { 22 | string clause = ""; 23 | if (Negate == true) 24 | { 25 | clause = "NOT "; 26 | } 27 | 28 | clause = clause + Field + " < " + Value.ToString(); 29 | 30 | return clause; 31 | } 32 | } 33 | } -------------------------------------------------------------------------------- /Intacct.SDK/Functions/Common/Query/Comparison/Like/LikeString.cs: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2022 Sage Intacct, Inc. 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"). You may not 5 | * use this file except in compliance with the License. You may obtain a copy 6 | * of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * or in the "LICENSE" file accompanying this file. This file is distributed on 11 | * an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either 12 | * express or implied. See the License for the specific language governing 13 | * permissions and limitations under the License. 14 | */ 15 | 16 | namespace Intacct.SDK.Functions.Common.Query.Comparison.Like 17 | { 18 | public class LikeString : AbstractString 19 | { 20 | public override string ToString() 21 | { 22 | string clause = ""; 23 | if (Negate == true) 24 | { 25 | clause = "NOT "; 26 | } 27 | 28 | clause = clause + Field + " LIKE '" + Value.Replace("'", "\'") + "'"; 29 | 30 | return clause; 31 | } 32 | } 33 | } -------------------------------------------------------------------------------- /Intacct.SDK/Functions/Common/Query/Comparison/LessThan/LessThanDate.cs: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2022 Sage Intacct, Inc. 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"). You may not 5 | * use this file except in compliance with the License. You may obtain a copy 6 | * of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * or in the "LICENSE" file accompanying this file. This file is distributed on 11 | * an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either 12 | * express or implied. See the License for the specific language governing 13 | * permissions and limitations under the License. 14 | */ 15 | 16 | namespace Intacct.SDK.Functions.Common.Query.Comparison.LessThan 17 | { 18 | public class LessThanDate : AbstractDate 19 | { 20 | public override string ToString() 21 | { 22 | string clause = ""; 23 | if (Negate == true) 24 | { 25 | clause = "NOT "; 26 | } 27 | 28 | clause = clause + Field + " < '" + Value.ToString(Format) + "'"; 29 | 30 | return clause; 31 | } 32 | } 33 | } -------------------------------------------------------------------------------- /Intacct.SDK/Functions/Common/Query/Comparison/EqualTo/EqualToDateTime.cs: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2022 Sage Intacct, Inc. 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"). You may not 5 | * use this file except in compliance with the License. You may obtain a copy 6 | * of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * or in the "LICENSE" file accompanying this file. This file is distributed on 11 | * an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either 12 | * express or implied. See the License for the specific language governing 13 | * permissions and limitations under the License. 14 | */ 15 | 16 | namespace Intacct.SDK.Functions.Common.Query.Comparison.EqualTo 17 | { 18 | public class EqualToDateTime : AbstractDateTime 19 | { 20 | public override string ToString() 21 | { 22 | string clause = ""; 23 | if (Negate == true) 24 | { 25 | clause = "NOT "; 26 | } 27 | 28 | clause = clause + Field + " = '" + Value.ToString(Format) + "'"; 29 | 30 | return clause; 31 | } 32 | } 33 | } -------------------------------------------------------------------------------- /Intacct.SDK/Functions/Common/Query/Comparison/EqualTo/EqualToString.cs: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2022 Sage Intacct, Inc. 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"). You may not 5 | * use this file except in compliance with the License. You may obtain a copy 6 | * of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * or in the "LICENSE" file accompanying this file. This file is distributed on 11 | * an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either 12 | * express or implied. See the License for the specific language governing 13 | * permissions and limitations under the License. 14 | */ 15 | 16 | namespace Intacct.SDK.Functions.Common.Query.Comparison.EqualTo 17 | { 18 | public class EqualToString : AbstractString 19 | { 20 | public override string ToString() 21 | { 22 | string clause = ""; 23 | if (Negate == true) 24 | { 25 | clause = "NOT "; 26 | } 27 | 28 | clause = clause + Field + " = '" + Value.Replace("'", "\'") + "'"; 29 | 30 | return clause; 31 | } 32 | } 33 | } -------------------------------------------------------------------------------- /Intacct.SDK/Functions/Common/Query/Comparison/GreaterThan/GreaterThanDecimal.cs: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2022 Sage Intacct, Inc. 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"). You may not 5 | * use this file except in compliance with the License. You may obtain a copy 6 | * of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * or in the "LICENSE" file accompanying this file. This file is distributed on 11 | * an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either 12 | * express or implied. See the License for the specific language governing 13 | * permissions and limitations under the License. 14 | */ 15 | 16 | namespace Intacct.SDK.Functions.Common.Query.Comparison.GreaterThan 17 | { 18 | public class GreaterThanDecimal : AbstractDecimal 19 | { 20 | public override string ToString() 21 | { 22 | string clause = ""; 23 | if (Negate == true) 24 | { 25 | clause = "NOT "; 26 | } 27 | 28 | clause = clause + Field + " > " + Value.ToString(); 29 | 30 | return clause; 31 | } 32 | } 33 | } -------------------------------------------------------------------------------- /Intacct.SDK/Functions/Common/Query/Comparison/GreaterThan/GreaterThanInteger.cs: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2022 Sage Intacct, Inc. 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"). You may not 5 | * use this file except in compliance with the License. You may obtain a copy 6 | * of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * or in the "LICENSE" file accompanying this file. This file is distributed on 11 | * an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either 12 | * express or implied. See the License for the specific language governing 13 | * permissions and limitations under the License. 14 | */ 15 | 16 | namespace Intacct.SDK.Functions.Common.Query.Comparison.GreaterThan 17 | { 18 | public class GreaterThanInteger : AbstractInteger 19 | { 20 | public override string ToString() 21 | { 22 | string clause = ""; 23 | if (Negate == true) 24 | { 25 | clause = "NOT "; 26 | } 27 | 28 | clause = clause + Field + " > " + Value.ToString(); 29 | 30 | return clause; 31 | } 32 | } 33 | } -------------------------------------------------------------------------------- /Intacct.SDK/Functions/Common/Query/Comparison/LessThan/LessThanString.cs: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2022 Sage Intacct, Inc. 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"). You may not 5 | * use this file except in compliance with the License. You may obtain a copy 6 | * of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * or in the "LICENSE" file accompanying this file. This file is distributed on 11 | * an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either 12 | * express or implied. See the License for the specific language governing 13 | * permissions and limitations under the License. 14 | */ 15 | 16 | namespace Intacct.SDK.Functions.Common.Query.Comparison.LessThan 17 | { 18 | public class LessThanString : AbstractString 19 | { 20 | public override string ToString() 21 | { 22 | string clause = ""; 23 | if (Negate == true) 24 | { 25 | clause = "NOT "; 26 | } 27 | 28 | clause = clause + Field + " < '" + Value.Replace("'", "\'") + "'"; 29 | 30 | return clause; 31 | } 32 | } 33 | } -------------------------------------------------------------------------------- /Intacct.SDK/Functions/Common/Query/Comparison/GreaterThan/GreaterThanDate.cs: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2022 Sage Intacct, Inc. 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"). You may not 5 | * use this file except in compliance with the License. You may obtain a copy 6 | * of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * or in the "LICENSE" file accompanying this file. This file is distributed on 11 | * an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either 12 | * express or implied. See the License for the specific language governing 13 | * permissions and limitations under the License. 14 | */ 15 | 16 | namespace Intacct.SDK.Functions.Common.Query.Comparison.GreaterThan 17 | { 18 | public class GreaterThanDate : AbstractDate 19 | { 20 | public override string ToString() 21 | { 22 | string clause = ""; 23 | if (Negate == true) 24 | { 25 | clause = "NOT "; 26 | } 27 | 28 | clause = clause + Field + " > '" + Value.ToString(Format) + "'"; 29 | 30 | return clause; 31 | } 32 | } 33 | } -------------------------------------------------------------------------------- /Intacct.SDK/Functions/Common/Query/Comparison/LessThan/LessThanDateTime.cs: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2022 Sage Intacct, Inc. 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"). You may not 5 | * use this file except in compliance with the License. You may obtain a copy 6 | * of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * or in the "LICENSE" file accompanying this file. This file is distributed on 11 | * an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either 12 | * express or implied. See the License for the specific language governing 13 | * permissions and limitations under the License. 14 | */ 15 | 16 | namespace Intacct.SDK.Functions.Common.Query.Comparison.LessThan 17 | { 18 | public class LessThanDateTime : AbstractDateTime 19 | { 20 | public override string ToString() 21 | { 22 | string clause = ""; 23 | if (Negate == true) 24 | { 25 | clause = "NOT "; 26 | } 27 | 28 | clause = clause + Field + " < '" + Value.ToString(Format) + "'"; 29 | 30 | return clause; 31 | } 32 | } 33 | } -------------------------------------------------------------------------------- /Intacct.SDK/Functions/AccountsReceivable/AbstractInvoiceLineTaxEntries.cs: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2022 Sage Intacct, Inc. 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"). You may not 5 | * use this file except in compliance with the License. You may obtain a copy 6 | * of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * or in the "LICENSE" file accompanying this file. This file is distributed on 11 | * an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either 12 | * express or implied. See the License for the specific language governing 13 | * permissions and limitations under the License. 14 | */ 15 | 16 | using Intacct.SDK.Xml; 17 | using System; 18 | using System.Collections.Generic; 19 | using System.Text; 20 | 21 | namespace Intacct.SDK.Functions.AccountsReceivable 22 | { 23 | public abstract class AbstractInvoiceLineTaxEntries : IXmlObject 24 | { 25 | public string TaxId; 26 | public decimal? TaxValue; 27 | 28 | public abstract void WriteXml(ref IaXmlWriter xml); 29 | 30 | protected AbstractInvoiceLineTaxEntries() 31 | { 32 | } 33 | 34 | } 35 | 36 | } 37 | -------------------------------------------------------------------------------- /Intacct.SDK/Functions/Common/List/ExpressionFilter.cs: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2022 Sage Intacct, Inc. 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"). You may not 5 | * use this file except in compliance with the License. You may obtain a copy 6 | * of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * or in the "LICENSE" file accompanying this file. This file is distributed on 11 | * an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either 12 | * express or implied. See the License for the specific language governing 13 | * permissions and limitations under the License. 14 | */ 15 | 16 | namespace Intacct.SDK.Functions.Common.List 17 | { 18 | public class ExpressionFilter 19 | { 20 | public string Field; 21 | public string Operator; // =, !=, <, <=, >=, >, like, is null 22 | public string Value; 23 | 24 | public ExpressionFilter() { } 25 | public ExpressionFilter(string field, string operation, string value) 26 | { 27 | this.Field = field; 28 | this.Operator = operation; 29 | this.Value = value; 30 | } 31 | 32 | } 33 | } 34 | -------------------------------------------------------------------------------- /Intacct.SDK/Functions/Common/Query/Comparison/GreaterThan/GreaterThanString.cs: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2022 Sage Intacct, Inc. 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"). You may not 5 | * use this file except in compliance with the License. You may obtain a copy 6 | * of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * or in the "LICENSE" file accompanying this file. This file is distributed on 11 | * an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either 12 | * express or implied. See the License for the specific language governing 13 | * permissions and limitations under the License. 14 | */ 15 | 16 | namespace Intacct.SDK.Functions.Common.Query.Comparison.GreaterThan 17 | { 18 | public class GreaterThanString : AbstractString 19 | { 20 | public override string ToString() 21 | { 22 | string clause = ""; 23 | if (Negate == true) 24 | { 25 | clause = "NOT "; 26 | } 27 | 28 | clause = clause + Field + " > '" + Value.Replace("'", "\'") + "'"; 29 | 30 | return clause; 31 | } 32 | } 33 | } -------------------------------------------------------------------------------- /Intacct.SDK/Functions/Common/Query/Comparison/GreaterThan/GreaterThanDateTime.cs: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2022 Sage Intacct, Inc. 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"). You may not 5 | * use this file except in compliance with the License. You may obtain a copy 6 | * of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * or in the "LICENSE" file accompanying this file. This file is distributed on 11 | * an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either 12 | * express or implied. See the License for the specific language governing 13 | * permissions and limitations under the License. 14 | */ 15 | 16 | namespace Intacct.SDK.Functions.Common.Query.Comparison.GreaterThan 17 | { 18 | public class GreaterThanDateTime : AbstractDateTime 19 | { 20 | public override string ToString() 21 | { 22 | string clause = ""; 23 | if (Negate == true) 24 | { 25 | clause = "NOT "; 26 | } 27 | 28 | clause = clause + Field + " > '" + Value.ToString(Format) + "'"; 29 | 30 | return clause; 31 | } 32 | } 33 | } -------------------------------------------------------------------------------- /Intacct.SDK/Functions/Common/Query/Comparison/LessThanOrEqualTo/LessThanOrEqualToDecimal.cs: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2022 Sage Intacct, Inc. 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"). You may not 5 | * use this file except in compliance with the License. You may obtain a copy 6 | * of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * or in the "LICENSE" file accompanying this file. This file is distributed on 11 | * an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either 12 | * express or implied. See the License for the specific language governing 13 | * permissions and limitations under the License. 14 | */ 15 | 16 | namespace Intacct.SDK.Functions.Common.Query.Comparison.LessThanOrEqualTo 17 | { 18 | public class LessThanOrEqualToDecimal : AbstractDecimal 19 | { 20 | public override string ToString() 21 | { 22 | string clause = ""; 23 | if (Negate == true) 24 | { 25 | clause = "NOT "; 26 | } 27 | 28 | clause = clause + Field + " <= " + Value.ToString(); 29 | 30 | return clause; 31 | } 32 | } 33 | } -------------------------------------------------------------------------------- /Intacct.SDK/Functions/Common/Query/Comparison/LessThanOrEqualTo/LessThanOrEqualToInteger.cs: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2022 Sage Intacct, Inc. 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"). You may not 5 | * use this file except in compliance with the License. You may obtain a copy 6 | * of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * or in the "LICENSE" file accompanying this file. This file is distributed on 11 | * an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either 12 | * express or implied. See the License for the specific language governing 13 | * permissions and limitations under the License. 14 | */ 15 | 16 | namespace Intacct.SDK.Functions.Common.Query.Comparison.LessThanOrEqualTo 17 | { 18 | public class LessThanOrEqualToInteger : AbstractInteger 19 | { 20 | public override string ToString() 21 | { 22 | string clause = ""; 23 | if (Negate == true) 24 | { 25 | clause = "NOT "; 26 | } 27 | 28 | clause = clause + Field + " <= " + Value.ToString(); 29 | 30 | return clause; 31 | } 32 | } 33 | } -------------------------------------------------------------------------------- /Intacct.SDK/Functions/Common/Query/Comparison/LessThanOrEqualTo/LessThanOrEqualToDate.cs: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2022 Sage Intacct, Inc. 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"). You may not 5 | * use this file except in compliance with the License. You may obtain a copy 6 | * of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * or in the "LICENSE" file accompanying this file. This file is distributed on 11 | * an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either 12 | * express or implied. See the License for the specific language governing 13 | * permissions and limitations under the License. 14 | */ 15 | 16 | namespace Intacct.SDK.Functions.Common.Query.Comparison.LessThanOrEqualTo 17 | { 18 | public class LessThanOrEqualToDate : AbstractDate 19 | { 20 | public override string ToString() 21 | { 22 | string clause = ""; 23 | if (Negate == true) 24 | { 25 | clause = "NOT "; 26 | } 27 | 28 | clause = clause + Field + " <= '" + Value.ToString(Format) + "'"; 29 | 30 | return clause; 31 | } 32 | } 33 | } -------------------------------------------------------------------------------- /Intacct.SDK/Functions/AccountsPayable/ApPaymentDetailAdvance.cs: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2022 Sage Intacct, Inc. 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"). You may not 5 | * use this file except in compliance with the License. You may obtain a copy 6 | * of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * or in the "LICENSE" file accompanying this file. This file is distributed on 11 | * an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either 12 | * express or implied. See the License for the specific language governing 13 | * permissions and limitations under the License. 14 | */ 15 | 16 | namespace Intacct.SDK.Functions.AccountsPayable 17 | { 18 | public class ApPaymentDetailAdvance : AbstractApPaymentDetailCredit 19 | { 20 | protected override string GetKeyType() 21 | { 22 | return "ADVANCEKEY"; 23 | } 24 | 25 | protected override string GetEntryKeyType() 26 | { 27 | return "ADVANCEENTRYKEY"; 28 | } 29 | 30 | protected override string GetTransactionType() 31 | { 32 | return "TRX_POSTEDADVANCEAMOUNT"; 33 | } 34 | } 35 | } -------------------------------------------------------------------------------- /Intacct.SDK/Functions/AccountsPayable/ApPaymentDetailNegativeBill.cs: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2022 Sage Intacct, Inc. 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"). You may not 5 | * use this file except in compliance with the License. You may obtain a copy 6 | * of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * or in the "LICENSE" file accompanying this file. This file is distributed on 11 | * an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either 12 | * express or implied. See the License for the specific language governing 13 | * permissions and limitations under the License. 14 | */ 15 | 16 | namespace Intacct.SDK.Functions.AccountsPayable 17 | { 18 | public class ApPaymentDetailNegativeBill : AbstractApPaymentDetailCredit 19 | { 20 | protected override string GetKeyType() 21 | { 22 | return "INLINEKEY"; 23 | } 24 | 25 | protected override string GetEntryKeyType() 26 | { 27 | return "INLINEENTRYKEY"; 28 | } 29 | 30 | protected override string GetTransactionType() 31 | { 32 | return "TRX_INLINEAMOUNT"; 33 | } 34 | } 35 | } -------------------------------------------------------------------------------- /Intacct.SDK/Functions/Common/Query/Comparison/EqualTo/EqualToNull.cs: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2022 Sage Intacct, Inc. 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"). You may not 5 | * use this file except in compliance with the License. You may obtain a copy 6 | * of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * or in the "LICENSE" file accompanying this file. This file is distributed on 11 | * an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either 12 | * express or implied. See the License for the specific language governing 13 | * permissions and limitations under the License. 14 | */ 15 | 16 | namespace Intacct.SDK.Functions.Common.Query.Comparison.EqualTo 17 | { 18 | public class EqualToNull : AbstractNull 19 | { 20 | public override string ToString() 21 | { 22 | string clause = ""; 23 | if (Negate == true) 24 | { 25 | clause = clause + Field + " IS NOT NULL"; 26 | } 27 | else 28 | { 29 | clause = clause + Field + " IS NULL"; 30 | } 31 | 32 | return clause; 33 | } 34 | } 35 | } -------------------------------------------------------------------------------- /Intacct.SDK/Functions/AccountsPayable/ApPaymentDetailDebitMemo.cs: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2022 Sage Intacct, Inc. 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"). You may not 5 | * use this file except in compliance with the License. You may obtain a copy 6 | * of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * or in the "LICENSE" file accompanying this file. This file is distributed on 11 | * an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either 12 | * express or implied. See the License for the specific language governing 13 | * permissions and limitations under the License. 14 | */ 15 | 16 | namespace Intacct.SDK.Functions.AccountsPayable 17 | { 18 | public class ApPaymentDetailDebitMemo : AbstractApPaymentDetailCredit 19 | { 20 | protected override string GetKeyType() 21 | { 22 | return "ADJUSTMENTKEY"; 23 | } 24 | 25 | protected override string GetEntryKeyType() 26 | { 27 | return "ADJUSTMENTENTRYKEY"; 28 | } 29 | 30 | protected override string GetTransactionType() 31 | { 32 | return "TRX_ADJUSTMENTAMOUNT"; 33 | } 34 | } 35 | } -------------------------------------------------------------------------------- /Intacct.SDK/Functions/Common/Query/Comparison/AbstractDateTimeClass.cs: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2022 Sage Intacct, Inc. 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"). You may not 5 | * use this file except in compliance with the License. You may obtain a copy 6 | * of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * or in the "LICENSE" file accompanying this file. This file is distributed on 11 | * an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either 12 | * express or implied. See the License for the specific language governing 13 | * permissions and limitations under the License. 14 | */ 15 | 16 | using System; 17 | 18 | namespace Intacct.SDK.Functions.Common.Query.Comparison 19 | { 20 | public abstract class AbstractDateTimeClass : AbstractComparison 21 | { 22 | public const string IaDateFormat = "MM/dd/yyyy"; 23 | 24 | public const string IaDateTimeFormat = "MM/dd/yyyy HH:mm:ss"; 25 | 26 | public DateTime Value; 27 | 28 | public string Format; 29 | 30 | protected AbstractDateTimeClass(string format) 31 | { 32 | Format = format; 33 | } 34 | } 35 | } -------------------------------------------------------------------------------- /Intacct.SDK/Functions/Common/Query/Comparison/GreaterThanOrEqualTo/GreaterThanOrEqualToDecimal.cs: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2022 Sage Intacct, Inc. 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"). You may not 5 | * use this file except in compliance with the License. You may obtain a copy 6 | * of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * or in the "LICENSE" file accompanying this file. This file is distributed on 11 | * an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either 12 | * express or implied. See the License for the specific language governing 13 | * permissions and limitations under the License. 14 | */ 15 | 16 | namespace Intacct.SDK.Functions.Common.Query.Comparison.GreaterThanOrEqualTo 17 | { 18 | public class GreaterThanOrEqualToDecimal : AbstractDecimal 19 | { 20 | public override string ToString() 21 | { 22 | string clause = ""; 23 | if (Negate == true) 24 | { 25 | clause = "NOT "; 26 | } 27 | 28 | clause = clause + Field + " >= " + Value.ToString(); 29 | 30 | return clause; 31 | } 32 | } 33 | } -------------------------------------------------------------------------------- /Intacct.SDK/Functions/Common/Query/Comparison/GreaterThanOrEqualTo/GreaterThanOrEqualToInteger.cs: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2022 Sage Intacct, Inc. 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"). You may not 5 | * use this file except in compliance with the License. You may obtain a copy 6 | * of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * or in the "LICENSE" file accompanying this file. This file is distributed on 11 | * an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either 12 | * express or implied. See the License for the specific language governing 13 | * permissions and limitations under the License. 14 | */ 15 | 16 | namespace Intacct.SDK.Functions.Common.Query.Comparison.GreaterThanOrEqualTo 17 | { 18 | public class GreaterThanOrEqualToInteger : AbstractInteger 19 | { 20 | public override string ToString() 21 | { 22 | string clause = ""; 23 | if (Negate == true) 24 | { 25 | clause = "NOT "; 26 | } 27 | 28 | clause = clause + Field + " >= " + Value.ToString(); 29 | 30 | return clause; 31 | } 32 | } 33 | } -------------------------------------------------------------------------------- /Intacct.SDK/Functions/Common/Query/Comparison/LessThanOrEqualTo/LessThanOrEqualToString.cs: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2022 Sage Intacct, Inc. 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"). You may not 5 | * use this file except in compliance with the License. You may obtain a copy 6 | * of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * or in the "LICENSE" file accompanying this file. This file is distributed on 11 | * an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either 12 | * express or implied. See the License for the specific language governing 13 | * permissions and limitations under the License. 14 | */ 15 | 16 | namespace Intacct.SDK.Functions.Common.Query.Comparison.LessThanOrEqualTo 17 | { 18 | public class LessThanOrEqualToString : AbstractString 19 | { 20 | public override string ToString() 21 | { 22 | string clause = ""; 23 | if (Negate == true) 24 | { 25 | clause = "NOT "; 26 | } 27 | 28 | clause = clause + Field + " <= '" + Value.Replace("'", "\'") + "'"; 29 | 30 | return clause; 31 | } 32 | } 33 | } -------------------------------------------------------------------------------- /Intacct.SDK/Functions/Common/Query/Comparison/GreaterThanOrEqualTo/GreaterThanOrEqualToDate.cs: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2022 Sage Intacct, Inc. 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"). You may not 5 | * use this file except in compliance with the License. You may obtain a copy 6 | * of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * or in the "LICENSE" file accompanying this file. This file is distributed on 11 | * an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either 12 | * express or implied. See the License for the specific language governing 13 | * permissions and limitations under the License. 14 | */ 15 | 16 | namespace Intacct.SDK.Functions.Common.Query.Comparison.GreaterThanOrEqualTo 17 | { 18 | public class GreaterThanOrEqualToDate : AbstractDate 19 | { 20 | public override string ToString() 21 | { 22 | string clause = ""; 23 | if (Negate == true) 24 | { 25 | clause = "NOT "; 26 | } 27 | 28 | clause = clause + Field + " >= '" + Value.ToString(Format) + "'"; 29 | 30 | return clause; 31 | } 32 | } 33 | } -------------------------------------------------------------------------------- /Intacct.SDK/Functions/Common/Query/Comparison/LessThanOrEqualTo/LessThanOrEqualToDateTime.cs: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2022 Sage Intacct, Inc. 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"). You may not 5 | * use this file except in compliance with the License. You may obtain a copy 6 | * of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * or in the "LICENSE" file accompanying this file. This file is distributed on 11 | * an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either 12 | * express or implied. See the License for the specific language governing 13 | * permissions and limitations under the License. 14 | */ 15 | 16 | namespace Intacct.SDK.Functions.Common.Query.Comparison.LessThanOrEqualTo 17 | { 18 | public class LessThanOrEqualToDateTime : AbstractDateTime 19 | { 20 | public override string ToString() 21 | { 22 | string clause = ""; 23 | if (Negate == true) 24 | { 25 | clause = "NOT "; 26 | } 27 | 28 | clause = clause + Field + " <= '" + Value.ToString(Format) + "'"; 29 | 30 | return clause; 31 | } 32 | } 33 | } -------------------------------------------------------------------------------- /Intacct.SDK/Functions/IFunction.cs: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2022 Sage Intacct, Inc. 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"). You may not 5 | * use this file except in compliance with the License. You may obtain a copy 6 | * of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * or in the "LICENSE" file accompanying this file. This file is distributed on 11 | * an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either 12 | * express or implied. See the License for the specific language governing 13 | * permissions and limitations under the License. 14 | */ 15 | 16 | using Intacct.SDK.Xml; 17 | 18 | namespace Intacct.SDK.Functions 19 | { 20 | public interface IFunction : IXmlObject 21 | { 22 | 23 | string ControlId { get; set; } 24 | 25 | /// 26 | /// This method should use an IaXmlWriter reference to write the `function` block element with its `controlid` 27 | /// attribute. This and everything inside the function block must follow the Web Services schema. 28 | /// 29 | /// 30 | new void WriteXml(ref IaXmlWriter xml); 31 | } 32 | } -------------------------------------------------------------------------------- /Intacct.SDK/Functions/AccountsReceivable/AbstractArPaymentSummary.cs: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2022 Sage Intacct, Inc. 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"). You may not 5 | * use this file except in compliance with the License. You may obtain a copy 6 | * of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * or in the "LICENSE" file accompanying this file. This file is distributed on 11 | * an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either 12 | * express or implied. See the License for the specific language governing 13 | * permissions and limitations under the License. 14 | */ 15 | 16 | using System; 17 | 18 | namespace Intacct.SDK.Functions.AccountsReceivable 19 | { 20 | public abstract class AbstractArPaymentSummary : AbstractFunction 21 | { 22 | 23 | public int? RecordNo; 24 | 25 | public string Title; 26 | 27 | public DateTime? GlPostingDate; 28 | 29 | public string BankAccountId; 30 | 31 | public string UndepositedFundsGlAccountNo; 32 | 33 | protected AbstractArPaymentSummary(string controlId = null) : base(controlId) 34 | { 35 | } 36 | } 37 | } -------------------------------------------------------------------------------- /Intacct.SDK/Functions/Common/Query/Comparison/GreaterThanOrEqualTo/GreaterThanOrEqualToString.cs: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2022 Sage Intacct, Inc. 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"). You may not 5 | * use this file except in compliance with the License. You may obtain a copy 6 | * of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * or in the "LICENSE" file accompanying this file. This file is distributed on 11 | * an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either 12 | * express or implied. See the License for the specific language governing 13 | * permissions and limitations under the License. 14 | */ 15 | 16 | namespace Intacct.SDK.Functions.Common.Query.Comparison.GreaterThanOrEqualTo 17 | { 18 | public class GreaterThanOrEqualToString : AbstractString 19 | { 20 | public override string ToString() 21 | { 22 | string clause = ""; 23 | if (Negate == true) 24 | { 25 | clause = "NOT "; 26 | } 27 | 28 | clause = clause + Field + " >= '" + Value.Replace("'", "\'") + "'"; 29 | 30 | return clause; 31 | } 32 | } 33 | } -------------------------------------------------------------------------------- /Intacct.SDK/Functions/Common/Query/Comparison/GreaterThanOrEqualTo/GreaterThanOrEqualToDateTime.cs: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2022 Sage Intacct, Inc. 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"). You may not 5 | * use this file except in compliance with the License. You may obtain a copy 6 | * of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * or in the "LICENSE" file accompanying this file. This file is distributed on 11 | * an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either 12 | * express or implied. See the License for the specific language governing 13 | * permissions and limitations under the License. 14 | */ 15 | 16 | namespace Intacct.SDK.Functions.Common.Query.Comparison.GreaterThanOrEqualTo 17 | { 18 | public class GreaterThanOrEqualToDateTime : AbstractDateTime 19 | { 20 | public override string ToString() 21 | { 22 | string clause = ""; 23 | if (Negate == true) 24 | { 25 | clause = "NOT "; 26 | } 27 | 28 | clause = clause + Field + " >= '" + Value.ToString(Format) + "'"; 29 | 30 | return clause; 31 | } 32 | } 33 | } -------------------------------------------------------------------------------- /Intacct.SDK/Functions/Common/Query/Comparison/InList/InListInteger.cs: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2022 Sage Intacct, Inc. 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"). You may not 5 | * use this file except in compliance with the License. You may obtain a copy 6 | * of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * or in the "LICENSE" file accompanying this file. This file is distributed on 11 | * an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either 12 | * express or implied. See the License for the specific language governing 13 | * permissions and limitations under the License. 14 | */ 15 | 16 | namespace Intacct.SDK.Functions.Common.Query.Comparison.InList 17 | { 18 | public class InListInteger : AbstractListInteger 19 | { 20 | public override string ToString() 21 | { 22 | string clause = ""; 23 | string notClause = ""; 24 | 25 | if (Negate == true) 26 | { 27 | notClause = " NOT"; 28 | } 29 | 30 | clause = Field + notClause + " IN (" + string.Join(",", ValuesList) + ")"; 31 | 32 | return clause; 33 | } 34 | } 35 | } -------------------------------------------------------------------------------- /Intacct.SDK/Functions/GeneralLedger/AbstractJournalEntryLine.cs: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2022 Sage Intacct, Inc. 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"). You may not 5 | * use this file except in compliance with the License. You may obtain a copy 6 | * of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * or in the "LICENSE" file accompanying this file. This file is distributed on 11 | * an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either 12 | * express or implied. See the License for the specific language governing 13 | * permissions and limitations under the License. 14 | */ 15 | 16 | using System; 17 | 18 | namespace Intacct.SDK.Functions.GeneralLedger 19 | { 20 | public abstract class AbstractJournalEntryLine : AbstractGlEntry 21 | { 22 | 23 | public string GlAccountNumber; 24 | 25 | public decimal? TransactionAmount; 26 | 27 | public string TransactionCurrency; 28 | 29 | public DateTime? ExchangeRateDate; 30 | 31 | public decimal? ExchangeRateValue; 32 | 33 | public string ExchangeRateType; 34 | 35 | protected AbstractJournalEntryLine() : base() 36 | { 37 | } 38 | 39 | } 40 | } -------------------------------------------------------------------------------- /Intacct.SDK/Functions/Company/AbstractClass.cs: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2022 Sage Intacct, Inc. 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"). You may not 5 | * use this file except in compliance with the License. You may obtain a copy 6 | * of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * or in the "LICENSE" file accompanying this file. This file is distributed on 11 | * an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either 12 | * express or implied. See the License for the specific language governing 13 | * permissions and limitations under the License. 14 | */ 15 | 16 | using System.Collections.Generic; 17 | 18 | namespace Intacct.SDK.Functions.Company 19 | { 20 | public abstract class AbstractClass : AbstractFunction 21 | { 22 | 23 | public string ClassId; 24 | 25 | public string ClassName; 26 | 27 | public string Description; 28 | 29 | public string ParentClassId; 30 | 31 | public bool? Active; 32 | 33 | public Dictionary CustomFields = new Dictionary(); 34 | 35 | protected AbstractClass(string controlId = null) : base(controlId) 36 | { 37 | } 38 | 39 | } 40 | } -------------------------------------------------------------------------------- /Intacct.SDK/Functions/Company/SubscriptionList.cs: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2022 Sage Intacct, Inc. 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"). You may not 5 | * use this file except in compliance with the License. You may obtain a copy 6 | * of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * or in the "LICENSE" file accompanying this file. This file is distributed on 11 | * an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either 12 | * express or implied. See the License for the specific language governing 13 | * permissions and limitations under the License. 14 | */ 15 | 16 | using Intacct.SDK.Xml; 17 | 18 | namespace Intacct.SDK.Functions.Company 19 | { 20 | public class SubscriptionList : AbstractFunction 21 | { 22 | public SubscriptionList(string controlId = "") : base(controlId) 23 | { 24 | } 25 | 26 | public override void WriteXml(ref IaXmlWriter xml) 27 | { 28 | xml.WriteStartElement("function"); 29 | xml.WriteAttributeString("controlid", ControlId); 30 | 31 | xml.WriteElementString("get_applications", ""); 32 | 33 | xml.WriteEndElement(); //function 34 | } 35 | } 36 | } 37 | -------------------------------------------------------------------------------- /Intacct.SDK/Functions/Company/AbstractAttachments.cs: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2022 Sage Intacct, Inc. 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"). You may not 5 | * use this file except in compliance with the License. You may obtain a copy 6 | * of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * or in the "LICENSE" file accompanying this file. This file is distributed on 11 | * an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either 12 | * express or implied. See the License for the specific language governing 13 | * permissions and limitations under the License. 14 | */ 15 | 16 | using System.Collections.Generic; 17 | 18 | namespace Intacct.SDK.Functions.Company 19 | { 20 | public abstract class AbstractAttachments : AbstractFunction 21 | { 22 | 23 | public string AttachmentsId; 24 | 25 | public string AttachmentsName; 26 | 27 | public string AttachmentFolderName; 28 | 29 | public string Description; 30 | 31 | public List Files = new List(); 32 | 33 | protected AbstractAttachments(string controlId = null) : base(controlId) 34 | { 35 | } 36 | 37 | } 38 | } -------------------------------------------------------------------------------- /Intacct.SDK/Functions/GeneralLedger/AbstractAccount.cs: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2022 Sage Intacct, Inc. 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"). You may not 5 | * use this file except in compliance with the License. You may obtain a copy 6 | * of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * or in the "LICENSE" file accompanying this file. This file is distributed on 11 | * an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either 12 | * express or implied. See the License for the specific language governing 13 | * permissions and limitations under the License. 14 | */ 15 | 16 | namespace Intacct.SDK.Functions.GeneralLedger 17 | { 18 | public abstract class AbstractAccount : AbstractGlAccount 19 | { 20 | 21 | public string AccountType; 22 | 23 | public string NormalBalance; 24 | 25 | public string ClosingType; 26 | 27 | public string CloseIntoGlAccountNo; 28 | 29 | public string GlAccountAlternative; 30 | 31 | public string TaxReturnCode; 32 | 33 | public string M3ReturnCode; 34 | 35 | public bool? Taxable; 36 | 37 | protected AbstractAccount(string controlId = null) : base(controlId) 38 | { 39 | } 40 | 41 | } 42 | } -------------------------------------------------------------------------------- /Intacct.SDK.Tests/Functions/Company/SubscriptionListTest.cs: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2022 Sage Intacct, Inc. 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"). You may not 5 | * use this file except in compliance with the License. You may obtain a copy 6 | * of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * or in the "LICENSE" file accompanying this file. This file is distributed on 11 | * an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either 12 | * express or implied. See the License for the specific language governing 13 | * permissions and limitations under the License. 14 | */ 15 | 16 | using Intacct.SDK.Functions.Company; 17 | using Intacct.SDK.Tests.Xml; 18 | using Xunit; 19 | 20 | namespace Intacct.SDK.Tests.Functions.Company 21 | { 22 | public class SubscriptionListTest : XmlObjectTestHelper 23 | { 24 | [Fact] 25 | public void GetXmlTest() 26 | { 27 | string expected = @" 28 | 29 | 30 | "; 31 | 32 | SubscriptionList apiFunction = new SubscriptionList("unittest"); 33 | 34 | this.CompareXml(expected, apiFunction); 35 | } 36 | } 37 | } 38 | -------------------------------------------------------------------------------- /Intacct.SDK/Functions/Company/AbstractDepartment.cs: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2022 Sage Intacct, Inc. 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"). You may not 5 | * use this file except in compliance with the License. You may obtain a copy 6 | * of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * or in the "LICENSE" file accompanying this file. This file is distributed on 11 | * an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either 12 | * express or implied. See the License for the specific language governing 13 | * permissions and limitations under the License. 14 | */ 15 | 16 | using System.Collections.Generic; 17 | 18 | namespace Intacct.SDK.Functions.Company 19 | { 20 | public abstract class AbstractDepartment : AbstractFunction 21 | { 22 | 23 | public string DepartmentId; 24 | 25 | public string DepartmentName; 26 | 27 | public string ParentDepartmentId; 28 | 29 | public string ManagerEmployeeId; 30 | 31 | public string DepartmentTitle; 32 | 33 | public bool? Active; 34 | 35 | public Dictionary CustomFields = new Dictionary(); 36 | 37 | protected AbstractDepartment(string controlId = null) : base(controlId) 38 | { 39 | } 40 | 41 | } 42 | } -------------------------------------------------------------------------------- /Intacct.SDK/Functions/AccountsReceivable/ArPaymentItem.cs: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2022 Sage Intacct, Inc. 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"). You may not 5 | * use this file except in compliance with the License. You may obtain a copy 6 | * of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * or in the "LICENSE" file accompanying this file. This file is distributed on 11 | * an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either 12 | * express or implied. See the License for the specific language governing 13 | * permissions and limitations under the License. 14 | */ 15 | 16 | using Intacct.SDK.Xml; 17 | 18 | namespace Intacct.SDK.Functions.AccountsReceivable 19 | { 20 | public class ArPaymentItem : IXmlObject 21 | { 22 | 23 | public int? ApplyToRecordId; 24 | 25 | public decimal? AmountToApply; 26 | 27 | public ArPaymentItem() 28 | { 29 | } 30 | 31 | public void WriteXml(ref IaXmlWriter xml) 32 | { 33 | xml.WriteStartElement("arpaymentitem"); 34 | 35 | xml.WriteElement("invoicekey", ApplyToRecordId, true); 36 | xml.WriteElement("amount", AmountToApply, true); 37 | 38 | xml.WriteEndElement(); //arpaymentitem 39 | } 40 | 41 | } 42 | } -------------------------------------------------------------------------------- /Intacct.SDK/Functions/InventoryControl/AbstractTransactionItemDetail.cs: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2022 Sage Intacct, Inc. 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"). You may not 5 | * use this file except in compliance with the License. You may obtain a copy 6 | * of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * or in the "LICENSE" file accompanying this file. This file is distributed on 11 | * an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either 12 | * express or implied. See the License for the specific language governing 13 | * permissions and limitations under the License. 14 | */ 15 | 16 | using System; 17 | using Intacct.SDK.Xml; 18 | 19 | namespace Intacct.SDK.Functions.InventoryControl 20 | { 21 | public abstract class AbstractTransactionItemDetail : IXmlObject 22 | { 23 | 24 | public decimal? Quantity; 25 | 26 | public string SerialNumber; 27 | 28 | public string LotNumber; 29 | 30 | public string Aisle; 31 | 32 | public string Row; 33 | 34 | public string Bin; 35 | 36 | public DateTime? ItemExpiration; 37 | 38 | protected AbstractTransactionItemDetail() 39 | { 40 | } 41 | 42 | public abstract void WriteXml(ref IaXmlWriter xml); 43 | 44 | } 45 | } -------------------------------------------------------------------------------- /Intacct.SDK/Exceptions/ResultException.cs: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2022 Sage Intacct, Inc. 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"). You may not 5 | * use this file except in compliance with the License. You may obtain a copy 6 | * of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * or in the "LICENSE" file accompanying this file. This file is distributed on 11 | * an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either 12 | * express or implied. See the License for the specific language governing 13 | * permissions and limitations under the License. 14 | */ 15 | 16 | using System; 17 | using System.Collections.Generic; 18 | 19 | namespace Intacct.SDK.Exceptions 20 | { 21 | public class ResultException: ResponseException 22 | { 23 | 24 | public ResultException() 25 | { 26 | } 27 | 28 | public ResultException(string message) 29 | : base(message) 30 | { 31 | } 32 | 33 | public ResultException(string message, List errors) 34 | : base(message, errors) 35 | { 36 | } 37 | 38 | public ResultException(string message, List errors, Exception innerException) 39 | : base(message, errors, innerException) 40 | { 41 | } 42 | } 43 | } -------------------------------------------------------------------------------- /Intacct.SDK/Functions/Projects/TaskDelete.cs: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2022 Sage Intacct, Inc. 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"). You may not 5 | * use this file except in compliance with the License. You may obtain a copy 6 | * of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * or in the "LICENSE" file accompanying this file. This file is distributed on 11 | * an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either 12 | * express or implied. See the License for the specific language governing 13 | * permissions and limitations under the License. 14 | */ 15 | 16 | using Intacct.SDK.Xml; 17 | 18 | namespace Intacct.SDK.Functions.Projects 19 | { 20 | public class TaskDelete : AbstractTask 21 | { 22 | 23 | public TaskDelete(string controlId = null) : base(controlId) 24 | { 25 | } 26 | 27 | public override void WriteXml(ref IaXmlWriter xml) 28 | { 29 | xml.WriteStartElement("function"); 30 | xml.WriteAttribute("controlid", ControlId, true); 31 | 32 | xml.WriteStartElement("delete_task"); 33 | 34 | xml.WriteAttribute("key", RecordNo, true); 35 | 36 | xml.WriteEndElement(); //delete_task 37 | 38 | xml.WriteEndElement(); //function 39 | } 40 | 41 | } 42 | } -------------------------------------------------------------------------------- /Intacct.SDK/Functions/Company/ClassDelete.cs: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2022 Sage Intacct, Inc. 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"). You may not 5 | * use this file except in compliance with the License. You may obtain a copy 6 | * of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * or in the "LICENSE" file accompanying this file. This file is distributed on 11 | * an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either 12 | * express or implied. See the License for the specific language governing 13 | * permissions and limitations under the License. 14 | */ 15 | 16 | using Intacct.SDK.Xml; 17 | 18 | namespace Intacct.SDK.Functions.Company 19 | { 20 | public class ClassDelete : AbstractClass 21 | { 22 | 23 | public ClassDelete(string controlId = null) : base(controlId) 24 | { 25 | } 26 | 27 | public override void WriteXml(ref IaXmlWriter xml) 28 | { 29 | xml.WriteStartElement("function"); 30 | xml.WriteAttribute("controlid", ControlId, true); 31 | 32 | xml.WriteStartElement("delete_class"); 33 | 34 | xml.WriteAttribute("key", ClassId, true); 35 | 36 | xml.WriteEndElement(); //delete_class 37 | 38 | xml.WriteEndElement(); //function 39 | } 40 | 41 | } 42 | } -------------------------------------------------------------------------------- /Intacct.SDK/Functions/Company/ContactListInfo.cs: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2022 Sage Intacct, Inc. 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"). You may not 5 | * use this file except in compliance with the License. You may obtain a copy 6 | * of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * or in the "LICENSE" file accompanying this file. This file is distributed on 11 | * an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either 12 | * express or implied. See the License for the specific language governing 13 | * permissions and limitations under the License. 14 | */ 15 | 16 | using Intacct.SDK.Xml; 17 | using System; 18 | using System.Collections.Generic; 19 | using System.Text; 20 | 21 | namespace Intacct.SDK.Functions.Company 22 | { 23 | public class ContactListInfo 24 | { 25 | public string CategoryName; 26 | 27 | public string Contact; 28 | 29 | public void WriteXmlContactListInfo(ref IaXmlWriter xml) 30 | { 31 | xml.WriteStartElement("CONTACT_LIST_INFO"); 32 | 33 | xml.WriteElement("CATEGORYNAME", this.CategoryName); 34 | 35 | xml.WriteStartElement("CONTACT"); 36 | xml.WriteElement("NAME", this.Contact); 37 | xml.WriteEndElement(); 38 | 39 | xml.WriteEndElement(); 40 | } 41 | } 42 | } 43 | -------------------------------------------------------------------------------- /Intacct.SDK/Functions/DataDeliveryService/DdsObjectList.cs: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2022 Sage Intacct, Inc. 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"). You may not 5 | * use this file except in compliance with the License. You may obtain a copy 6 | * of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * or in the "LICENSE" file accompanying this file. This file is distributed on 11 | * an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either 12 | * express or implied. See the License for the specific language governing 13 | * permissions and limitations under the License. 14 | */ 15 | 16 | using Intacct.SDK.Xml; 17 | 18 | namespace Intacct.SDK.Functions.DataDeliveryService 19 | { 20 | public class DdsObjectList : AbstractFunction 21 | { 22 | 23 | public DdsObjectList(string controlId = null) : base(controlId) 24 | { 25 | } 26 | 27 | public override void WriteXml(ref IaXmlWriter xml) 28 | { 29 | xml.WriteStartElement("function"); 30 | xml.WriteAttribute("controlid", ControlId); 31 | 32 | xml.WriteStartElement("getDdsObjects"); 33 | 34 | xml.WriteEndElement(); //getDdsObjects 35 | 36 | xml.WriteEndElement(); //function 37 | } 38 | 39 | } 40 | } -------------------------------------------------------------------------------- /Intacct.SDK/Functions/Projects/TimesheetDelete.cs: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2022 Sage Intacct, Inc. 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"). You may not 5 | * use this file except in compliance with the License. You may obtain a copy 6 | * of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * or in the "LICENSE" file accompanying this file. This file is distributed on 11 | * an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either 12 | * express or implied. See the License for the specific language governing 13 | * permissions and limitations under the License. 14 | */ 15 | 16 | using Intacct.SDK.Xml; 17 | 18 | namespace Intacct.SDK.Functions.Projects 19 | { 20 | public class TimesheetDelete : AbstractTimesheet 21 | { 22 | 23 | public TimesheetDelete(string controlId = null) : base(controlId) 24 | { 25 | } 26 | 27 | public override void WriteXml(ref IaXmlWriter xml) 28 | { 29 | xml.WriteStartElement("function"); 30 | 31 | xml.WriteAttribute("controlid", ControlId, true); 32 | 33 | xml.WriteStartElement("delete_timesheet"); 34 | 35 | xml.WriteAttribute("key", RecordNo); 36 | 37 | xml.WriteEndElement(); //delete_timesheet 38 | 39 | xml.WriteEndElement(); //function 40 | } 41 | 42 | } 43 | } -------------------------------------------------------------------------------- /Intacct.SDK/Functions/AccountsPayable/BillDelete.cs: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2022 Sage Intacct, Inc. 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"). You may not 5 | * use this file except in compliance with the License. You may obtain a copy 6 | * of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * or in the "LICENSE" file accompanying this file. This file is distributed on 11 | * an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either 12 | * express or implied. See the License for the specific language governing 13 | * permissions and limitations under the License. 14 | */ 15 | 16 | using Intacct.SDK.Xml; 17 | 18 | namespace Intacct.SDK.Functions.AccountsPayable 19 | { 20 | public class BillDelete : AbstractBill 21 | { 22 | 23 | public BillDelete(string controlId = null) : base(controlId) 24 | { 25 | } 26 | 27 | public override void WriteXml(ref IaXmlWriter xml) 28 | { 29 | xml.WriteStartElement("function"); 30 | xml.WriteAttribute("controlid", ControlId, true); 31 | 32 | xml.WriteStartElement("delete_bill"); 33 | 34 | xml.WriteAttribute("key", RecordNo, true); 35 | 36 | xml.WriteEndElement(); //delete_bill 37 | 38 | xml.WriteEndElement(); //function 39 | } 40 | 41 | } 42 | } -------------------------------------------------------------------------------- /Intacct.SDK/Functions/InventoryControl/ItemDelete.cs: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2022 Sage Intacct, Inc. 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"). You may not 5 | * use this file except in compliance with the License. You may obtain a copy 6 | * of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * or in the "LICENSE" file accompanying this file. This file is distributed on 11 | * an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either 12 | * express or implied. See the License for the specific language governing 13 | * permissions and limitations under the License. 14 | */ 15 | 16 | using Intacct.SDK.Xml; 17 | 18 | namespace Intacct.SDK.Functions.InventoryControl 19 | { 20 | public class ItemDelete : AbstractItem 21 | { 22 | 23 | public ItemDelete(string controlId = null) : base(controlId) 24 | { 25 | } 26 | 27 | public override void WriteXml(ref IaXmlWriter xml) 28 | { 29 | xml.WriteStartElement("function"); 30 | xml.WriteAttribute("controlid", ControlId, true); 31 | 32 | xml.WriteStartElement("delete_item"); 33 | 34 | xml.WriteAttribute("itemid", ItemId, true); 35 | 36 | xml.WriteEndElement(); //delete_item 37 | 38 | xml.WriteEndElement(); //function 39 | } 40 | 41 | } 42 | } -------------------------------------------------------------------------------- /Intacct.SDK/Functions/Company/AttachmentsDelete.cs: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2022 Sage Intacct, Inc. 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"). You may not 5 | * use this file except in compliance with the License. You may obtain a copy 6 | * of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * or in the "LICENSE" file accompanying this file. This file is distributed on 11 | * an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either 12 | * express or implied. See the License for the specific language governing 13 | * permissions and limitations under the License. 14 | */ 15 | 16 | using Intacct.SDK.Xml; 17 | 18 | namespace Intacct.SDK.Functions.Company 19 | { 20 | public class AttachmentsDelete : AbstractAttachments 21 | { 22 | 23 | public AttachmentsDelete(string controlId = null) : base(controlId) 24 | { 25 | } 26 | 27 | public override void WriteXml(ref IaXmlWriter xml) 28 | { 29 | xml.WriteStartElement("function"); 30 | xml.WriteAttribute("controlid", ControlId, true); 31 | 32 | xml.WriteStartElement("delete_supdoc"); 33 | 34 | xml.WriteAttribute("key", AttachmentsId); 35 | 36 | xml.WriteEndElement(); //delete_supdoc 37 | 38 | xml.WriteEndElement(); //function 39 | } 40 | 41 | } 42 | } -------------------------------------------------------------------------------- /Intacct.SDK/Functions/Projects/ProjectDelete.cs: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2022 Sage Intacct, Inc. 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"). You may not 5 | * use this file except in compliance with the License. You may obtain a copy 6 | * of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * or in the "LICENSE" file accompanying this file. This file is distributed on 11 | * an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either 12 | * express or implied. See the License for the specific language governing 13 | * permissions and limitations under the License. 14 | */ 15 | 16 | using Intacct.SDK.Xml; 17 | 18 | namespace Intacct.SDK.Functions.Projects 19 | { 20 | public class ProjectDelete : AbstractProject 21 | { 22 | 23 | public ProjectDelete(string controlId = null) : base(controlId) 24 | { 25 | } 26 | 27 | public override void WriteXml(ref IaXmlWriter xml) 28 | { 29 | xml.WriteStartElement("function"); 30 | xml.WriteAttribute("controlid", ControlId, true); 31 | 32 | xml.WriteStartElement("delete_project"); 33 | 34 | xml.WriteAttribute("key", ProjectId, true); 35 | 36 | xml.WriteEndElement(); //delete_project 37 | 38 | xml.WriteEndElement(); //function 39 | } 40 | 41 | } 42 | } -------------------------------------------------------------------------------- /Intacct.SDK/Functions/Common/NewQuery/QuerySelect/Field.cs: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2022 Sage Intacct, Inc. 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"). You may not 5 | * use this file except in compliance with the License. You may obtain a copy 6 | * of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * or in the "LICENSE" file accompanying this file. This file is distributed on 11 | * an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either 12 | * express or implied. See the License for the specific language governing 13 | * permissions and limitations under the License. 14 | */ 15 | 16 | using System; 17 | using Intacct.SDK.Xml; 18 | 19 | namespace Intacct.SDK.Functions.Common.NewQuery.QuerySelect 20 | { 21 | public class Field : ISelect 22 | { 23 | private string FieldName { get; set; } 24 | 25 | public Field(string fieldName) 26 | { 27 | if (string.IsNullOrEmpty(fieldName)) 28 | { 29 | throw new ArgumentException( 30 | "Field name cannot be empty or null. Provide a field name for the builder."); 31 | } 32 | 33 | this.FieldName = fieldName; 34 | } 35 | 36 | public void WriteXml(ref IaXmlWriter xml) 37 | { 38 | xml.WriteElement("field", FieldName, false); 39 | } 40 | } 41 | } -------------------------------------------------------------------------------- /Intacct.SDK/Functions/Company/AllocationDelete.cs: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2022 Sage Intacct, Inc. 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"). You may not 5 | * use this file except in compliance with the License. You may obtain a copy 6 | * of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * or in the "LICENSE" file accompanying this file. This file is distributed on 11 | * an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either 12 | * express or implied. See the License for the specific language governing 13 | * permissions and limitations under the License. 14 | */ 15 | 16 | using Intacct.SDK.Xml; 17 | 18 | namespace Intacct.SDK.Functions.Company 19 | { 20 | public class AllocationDelete : AbstractAllocation 21 | { 22 | 23 | public AllocationDelete(string controlId = null) : base(controlId) 24 | { 25 | } 26 | 27 | public override void WriteXml(ref IaXmlWriter xml) 28 | { 29 | xml.WriteStartElement("function"); 30 | xml.WriteAttribute("controlid", ControlId, true); 31 | 32 | xml.WriteStartElement("delete_allocation"); 33 | 34 | xml.WriteAttribute("key", AllocationId); 35 | 36 | xml.WriteEndElement(); //delete_allocation 37 | 38 | xml.WriteEndElement(); //function 39 | } 40 | 41 | } 42 | } -------------------------------------------------------------------------------- /Intacct.SDK/Functions/Company/ContactDelete.cs: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2022 Sage Intacct, Inc. 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"). You may not 5 | * use this file except in compliance with the License. You may obtain a copy 6 | * of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * or in the "LICENSE" file accompanying this file. This file is distributed on 11 | * an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either 12 | * express or implied. See the License for the specific language governing 13 | * permissions and limitations under the License. 14 | */ 15 | 16 | using Intacct.SDK.Xml; 17 | 18 | namespace Intacct.SDK.Functions.Company 19 | { 20 | public class ContactDelete : AbstractContact 21 | { 22 | 23 | public ContactDelete(string controlId = null) : base(controlId) 24 | { 25 | } 26 | 27 | public override void WriteXml(ref IaXmlWriter xml) 28 | { 29 | xml.WriteStartElement("function"); 30 | xml.WriteAttribute("controlid", ControlId, true); 31 | 32 | xml.WriteStartElement("delete_contact"); 33 | 34 | xml.WriteAttribute("contactname", ContactName, true); 35 | 36 | xml.WriteEndElement(); //delete_contact 37 | 38 | xml.WriteEndElement(); //function 39 | } 40 | 41 | } 42 | } -------------------------------------------------------------------------------- /Intacct.SDK/Functions/AccountsPayable/VendorDelete.cs: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2022 Sage Intacct, Inc. 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"). You may not 5 | * use this file except in compliance with the License. You may obtain a copy 6 | * of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * or in the "LICENSE" file accompanying this file. This file is distributed on 11 | * an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either 12 | * express or implied. See the License for the specific language governing 13 | * permissions and limitations under the License. 14 | */ 15 | 16 | using Intacct.SDK.Xml; 17 | 18 | namespace Intacct.SDK.Functions.AccountsPayable 19 | { 20 | public class VendorDelete : AbstractVendor 21 | { 22 | 23 | public VendorDelete(string controlId = null) : base(controlId) 24 | { 25 | } 26 | 27 | public override void WriteXml(ref IaXmlWriter xml) 28 | { 29 | xml.WriteStartElement("function"); 30 | xml.WriteAttribute("controlid", ControlId, true); 31 | 32 | xml.WriteStartElement("delete_vendor"); 33 | 34 | xml.WriteAttribute("vendorid", VendorId, true); 35 | 36 | xml.WriteEndElement(); //delete_vendor 37 | 38 | xml.WriteEndElement(); //function 39 | } 40 | 41 | } 42 | } -------------------------------------------------------------------------------- /Intacct.SDK/Functions/Common/List/LogicalFilter.cs: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2022 Sage Intacct, Inc. 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"). You may not 5 | * use this file except in compliance with the License. You may obtain a copy 6 | * of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * or in the "LICENSE" file accompanying this file. This file is distributed on 11 | * an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either 12 | * express or implied. See the License for the specific language governing 13 | * permissions and limitations under the License. 14 | */ 15 | 16 | using System.Collections.Generic; 17 | 18 | namespace Intacct.SDK.Functions.Common.List 19 | { 20 | public class LogicalFilter 21 | { 22 | public string LogicalOperator; // and,or 23 | public List ExpressionFilterList = new List(); 24 | public List LogicalFilterList = new List(); 25 | 26 | public LogicalFilter() { } 27 | public LogicalFilter(string logicalOperator, List expressionList, List logicalList) 28 | { 29 | this.LogicalOperator = logicalOperator; 30 | this.ExpressionFilterList = expressionList; 31 | this.LogicalFilterList = logicalList; 32 | } 33 | 34 | } 35 | } -------------------------------------------------------------------------------- /Intacct.SDK/Functions/Company/LocationDelete.cs: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2022 Sage Intacct, Inc. 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"). You may not 5 | * use this file except in compliance with the License. You may obtain a copy 6 | * of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * or in the "LICENSE" file accompanying this file. This file is distributed on 11 | * an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either 12 | * express or implied. See the License for the specific language governing 13 | * permissions and limitations under the License. 14 | */ 15 | 16 | using Intacct.SDK.Xml; 17 | 18 | namespace Intacct.SDK.Functions.Company 19 | { 20 | public class LocationDelete : AbstractLocation 21 | { 22 | 23 | public LocationDelete(string controlId = null) : base(controlId) 24 | { 25 | } 26 | 27 | public override void WriteXml(ref IaXmlWriter xml) 28 | { 29 | xml.WriteStartElement("function"); 30 | xml.WriteAttribute("controlid", ControlId, true); 31 | 32 | xml.WriteStartElement("delete_location"); 33 | 34 | xml.WriteAttribute("locationid", LocationId, true); 35 | 36 | xml.WriteEndElement(); //delete_location 37 | 38 | xml.WriteEndElement(); //function 39 | } 40 | 41 | } 42 | } -------------------------------------------------------------------------------- /Intacct.SDK/Functions/AccountsPayable/ApAdjustmentDelete.cs: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2022 Sage Intacct, Inc. 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"). You may not 5 | * use this file except in compliance with the License. You may obtain a copy 6 | * of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * or in the "LICENSE" file accompanying this file. This file is distributed on 11 | * an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either 12 | * express or implied. See the License for the specific language governing 13 | * permissions and limitations under the License. 14 | */ 15 | 16 | using Intacct.SDK.Xml; 17 | 18 | namespace Intacct.SDK.Functions.AccountsPayable 19 | { 20 | public class ApAdjustmentDelete : AbstractApAdjustment 21 | { 22 | 23 | public ApAdjustmentDelete(string controlId = null) : base(controlId) 24 | { 25 | } 26 | 27 | public override void WriteXml(ref IaXmlWriter xml) 28 | { 29 | xml.WriteStartElement("function"); 30 | xml.WriteAttribute("controlid", ControlId, true); 31 | 32 | xml.WriteStartElement("delete_apadjustment"); 33 | 34 | xml.WriteAttribute("key", RecordNo); 35 | 36 | xml.WriteEndElement(); //delete_apadjustment 37 | 38 | xml.WriteEndElement(); //function 39 | } 40 | 41 | } 42 | } -------------------------------------------------------------------------------- /Intacct.SDK/Functions/AccountsReceivable/InvoiceDelete.cs: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2022 Sage Intacct, Inc. 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"). You may not 5 | * use this file except in compliance with the License. You may obtain a copy 6 | * of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * or in the "LICENSE" file accompanying this file. This file is distributed on 11 | * an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either 12 | * express or implied. See the License for the specific language governing 13 | * permissions and limitations under the License. 14 | */ 15 | 16 | using Intacct.SDK.Xml; 17 | 18 | namespace Intacct.SDK.Functions.AccountsReceivable 19 | { 20 | public class InvoiceDelete : AbstractInvoice 21 | { 22 | 23 | public InvoiceDelete(string controlId = null) : base(controlId) 24 | { 25 | } 26 | 27 | public override void WriteXml(ref IaXmlWriter xml) 28 | { 29 | xml.WriteStartElement("function"); 30 | xml.WriteAttribute("controlid", ControlId, true); 31 | 32 | xml.WriteStartElement("delete_invoice"); 33 | 34 | xml.WriteAttribute("key", RecordNo, true); 35 | 36 | xml.WriteEndElement(); //delete_invoice 37 | 38 | xml.WriteEndElement(); //function 39 | } 40 | 41 | } 42 | } -------------------------------------------------------------------------------- /Intacct.SDK/Functions/CashManagement/AbstractDeposit.cs: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2022 Sage Intacct, Inc. 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"). You may not 5 | * use this file except in compliance with the License. You may obtain a copy 6 | * of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * or in the "LICENSE" file accompanying this file. This file is distributed on 11 | * an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either 12 | * express or implied. See the License for the specific language governing 13 | * permissions and limitations under the License. 14 | */ 15 | 16 | using System; 17 | using System.Collections.Generic; 18 | 19 | namespace Intacct.SDK.Functions.CashManagement 20 | { 21 | public abstract class AbstractDeposit : AbstractFunction 22 | { 23 | public string BankAccountId; 24 | 25 | public DateTime DepositDate; 26 | 27 | public string DepositSlipId; 28 | 29 | public string Description; 30 | 31 | public string AttachmentsId; 32 | 33 | public List TransactionsKeysToDeposit = new List(); 34 | 35 | public Dictionary CustomFields = new Dictionary(); 36 | 37 | protected AbstractDeposit(string controlId = null) : base(controlId) 38 | { 39 | } 40 | } 41 | } -------------------------------------------------------------------------------- /Intacct.SDK/Functions/Common/NewQuery/QueryOrderBy/AbstractOrderDirection.cs: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2022 Sage Intacct, Inc. 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"). You may not 5 | * use this file except in compliance with the License. You may obtain a copy 6 | * of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * or in the "LICENSE" file accompanying this file. This file is distributed on 11 | * an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either 12 | * express or implied. See the License for the specific language governing 13 | * permissions and limitations under the License. 14 | */ 15 | 16 | using Intacct.SDK.Xml; 17 | 18 | namespace Intacct.SDK.Functions.Common.NewQuery.QueryOrderBy 19 | { 20 | public abstract class AbstractOrderDirection : IOrder 21 | { 22 | private readonly string _fieldName; 23 | 24 | protected AbstractOrderDirection(string fieldName) 25 | { 26 | this._fieldName = fieldName; 27 | } 28 | 29 | protected abstract string GetDirection(); 30 | 31 | public void WriteXml(ref IaXmlWriter xml) 32 | { 33 | xml.WriteStartElement("order"); 34 | xml.WriteElement("field", _fieldName); 35 | xml.WriteElement(GetDirection(), "", true); 36 | xml.WriteEndElement(); // order 37 | } 38 | } 39 | } -------------------------------------------------------------------------------- /Intacct.SDK/Functions/GeneralLedger/AccountDelete.cs: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2022 Sage Intacct, Inc. 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"). You may not 5 | * use this file except in compliance with the License. You may obtain a copy 6 | * of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * or in the "LICENSE" file accompanying this file. This file is distributed on 11 | * an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either 12 | * express or implied. See the License for the specific language governing 13 | * permissions and limitations under the License. 14 | */ 15 | 16 | using Intacct.SDK.Xml; 17 | 18 | namespace Intacct.SDK.Functions.GeneralLedger 19 | { 20 | public class AccountDelete : AbstractAccount 21 | { 22 | 23 | public AccountDelete(string controlId = null) : base(controlId) 24 | { 25 | } 26 | 27 | public override void WriteXml(ref IaXmlWriter xml) 28 | { 29 | xml.WriteStartElement("function"); 30 | xml.WriteAttribute("controlid", ControlId, true); 31 | 32 | xml.WriteStartElement("delete_glaccount"); 33 | 34 | xml.WriteAttribute("glaccountno", AccountNo, true); 35 | 36 | xml.WriteEndElement(); //delete_glaccount 37 | 38 | xml.WriteEndElement(); //function 39 | } 40 | 41 | } 42 | } -------------------------------------------------------------------------------- /Intacct.SDK/Functions/AccountsReceivable/ArAdjustmentDelete.cs: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2022 Sage Intacct, Inc. 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"). You may not 5 | * use this file except in compliance with the License. You may obtain a copy 6 | * of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * or in the "LICENSE" file accompanying this file. This file is distributed on 11 | * an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either 12 | * express or implied. See the License for the specific language governing 13 | * permissions and limitations under the License. 14 | */ 15 | 16 | using Intacct.SDK.Xml; 17 | 18 | namespace Intacct.SDK.Functions.AccountsReceivable 19 | { 20 | public class ArAdjustmentDelete : AbstractArAdjustment 21 | { 22 | 23 | public ArAdjustmentDelete(string controlId = null) : base(controlId) 24 | { 25 | } 26 | 27 | public override void WriteXml(ref IaXmlWriter xml) 28 | { 29 | xml.WriteStartElement("function"); 30 | xml.WriteAttribute("controlid", ControlId, true); 31 | 32 | xml.WriteStartElement("delete_aradjustment"); 33 | 34 | xml.WriteAttribute("key", RecordNo); 35 | 36 | xml.WriteEndElement(); //delete_araccountlabel 37 | 38 | xml.WriteEndElement(); //function 39 | } 40 | 41 | } 42 | } -------------------------------------------------------------------------------- /Intacct.SDK/Functions/Company/DepartmentDelete.cs: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2022 Sage Intacct, Inc. 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"). You may not 5 | * use this file except in compliance with the License. You may obtain a copy 6 | * of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * or in the "LICENSE" file accompanying this file. This file is distributed on 11 | * an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either 12 | * express or implied. See the License for the specific language governing 13 | * permissions and limitations under the License. 14 | */ 15 | 16 | using Intacct.SDK.Xml; 17 | 18 | namespace Intacct.SDK.Functions.Company 19 | { 20 | public class DepartmentDelete : AbstractDepartment 21 | { 22 | 23 | public DepartmentDelete(string controlId = null) : base(controlId) 24 | { 25 | } 26 | 27 | public override void WriteXml(ref IaXmlWriter xml) 28 | { 29 | xml.WriteStartElement("function"); 30 | xml.WriteAttribute("controlid", ControlId, true); 31 | 32 | xml.WriteStartElement("delete_department"); 33 | 34 | xml.WriteAttribute("departmentid", DepartmentId, true); 35 | 36 | xml.WriteEndElement(); //delete_department 37 | 38 | xml.WriteEndElement(); //function 39 | } 40 | 41 | } 42 | } -------------------------------------------------------------------------------- /Intacct.SDK/Functions/ContractsRevMgmt/ContractDelete.cs: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2022 Sage Intacct, Inc. 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"). You may not 5 | * use this file except in compliance with the License. You may obtain a copy 6 | * of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * or in the "LICENSE" file accompanying this file. This file is distributed on 11 | * an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either 12 | * express or implied. See the License for the specific language governing 13 | * permissions and limitations under the License. 14 | */ 15 | 16 | using Intacct.SDK.Xml; 17 | 18 | namespace Intacct.SDK.Functions.ContractsRevMgmt 19 | { 20 | public class ContractDelete : AbstractContract 21 | { 22 | 23 | public ContractDelete(string controlId = null) : base(controlId) 24 | { 25 | } 26 | 27 | public override void WriteXml(ref IaXmlWriter xml) 28 | { 29 | xml.WriteStartElement("function"); 30 | xml.WriteAttribute("controlid", ControlId, true); 31 | 32 | xml.WriteStartElement("delete"); 33 | xml.WriteElement("object", "CONTRACT"); 34 | xml.WriteElement("keys", RecordNo, true); 35 | 36 | xml.WriteEndElement(); //delete 37 | 38 | xml.WriteEndElement(); //function 39 | } 40 | 41 | } 42 | } -------------------------------------------------------------------------------- /Intacct.SDK/Functions/EmployeeExpenses/EmployeeDelete.cs: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2022 Sage Intacct, Inc. 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"). You may not 5 | * use this file except in compliance with the License. You may obtain a copy 6 | * of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * or in the "LICENSE" file accompanying this file. This file is distributed on 11 | * an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either 12 | * express or implied. See the License for the specific language governing 13 | * permissions and limitations under the License. 14 | */ 15 | 16 | using Intacct.SDK.Xml; 17 | 18 | namespace Intacct.SDK.Functions.EmployeeExpenses 19 | { 20 | public class EmployeeDelete : AbstractEmployee 21 | { 22 | 23 | public EmployeeDelete(string controlId = null) : base(controlId) 24 | { 25 | } 26 | 27 | public override void WriteXml(ref IaXmlWriter xml) 28 | { 29 | xml.WriteStartElement("function"); 30 | xml.WriteAttribute("controlid", ControlId, true); 31 | 32 | xml.WriteStartElement("delete_employee"); 33 | 34 | xml.WriteAttribute("employeeid", EmployeeId, true); 35 | 36 | xml.WriteEndElement(); //delete_employee 37 | 38 | xml.WriteEndElement(); //function 39 | } 40 | 41 | } 42 | } -------------------------------------------------------------------------------- /Intacct.SDK/Functions/AccountsReceivable/CustomerDelete.cs: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2022 Sage Intacct, Inc. 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"). You may not 5 | * use this file except in compliance with the License. You may obtain a copy 6 | * of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * or in the "LICENSE" file accompanying this file. This file is distributed on 11 | * an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either 12 | * express or implied. See the License for the specific language governing 13 | * permissions and limitations under the License. 14 | */ 15 | 16 | using Intacct.SDK.Xml; 17 | 18 | namespace Intacct.SDK.Functions.AccountsReceivable 19 | { 20 | public class CustomerDelete : AbstractCustomer 21 | { 22 | 23 | public CustomerDelete(string controlId = null) : base(controlId) 24 | { 25 | } 26 | 27 | public override void WriteXml(ref IaXmlWriter xml) 28 | { 29 | xml.WriteStartElement("function"); 30 | xml.WriteAttribute("controlid", ControlId, true); 31 | 32 | xml.WriteStartElement("delete_customer"); 33 | 34 | xml.WriteAttribute("customerid", CustomerId, true); 35 | 36 | xml.WriteEndElement(); //delete_customer 37 | 38 | xml.WriteEndElement(); //function 39 | } 40 | 41 | } 42 | } -------------------------------------------------------------------------------- /Intacct.SDK/Functions/Company/AttachmentsFolderDelete.cs: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2022 Sage Intacct, Inc. 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"). You may not 5 | * use this file except in compliance with the License. You may obtain a copy 6 | * of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * or in the "LICENSE" file accompanying this file. This file is distributed on 11 | * an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either 12 | * express or implied. See the License for the specific language governing 13 | * permissions and limitations under the License. 14 | */ 15 | 16 | using Intacct.SDK.Xml; 17 | 18 | namespace Intacct.SDK.Functions.Company 19 | { 20 | public class AttachmentsFolderDelete : AbstractAttachmentsFolder 21 | { 22 | 23 | public AttachmentsFolderDelete(string controlId = null) : base(controlId) 24 | { 25 | } 26 | 27 | public override void WriteXml(ref IaXmlWriter xml) 28 | { 29 | xml.WriteStartElement("function"); 30 | xml.WriteAttribute("controlid", ControlId, true); 31 | 32 | xml.WriteStartElement("delete_supdocfolder"); 33 | 34 | xml.WriteAttribute("key", FolderName); 35 | 36 | xml.WriteEndElement(); //delete_supdocfolder 37 | 38 | xml.WriteEndElement(); //function 39 | } 40 | 41 | } 42 | } -------------------------------------------------------------------------------- /Intacct.SDK/Functions/GlobalConsolidations/AbstractConsolidation.cs: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2022 Sage Intacct, Inc. 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"). You may not 5 | * use this file except in compliance with the License. You may obtain a copy 6 | * of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * or in the "LICENSE" file accompanying this file. This file is distributed on 11 | * an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either 12 | * express or implied. See the License for the specific language governing 13 | * permissions and limitations under the License. 14 | */ 15 | 16 | using System.Collections.Generic; 17 | 18 | namespace Intacct.SDK.Functions.GlobalConsolidations 19 | { 20 | public abstract class AbstractConsolidation : AbstractFunction 21 | { 22 | public string ReportingBookId; 23 | 24 | public bool? ProcessOffline; 25 | 26 | public bool? UpdateSucceedingPeriods; 27 | 28 | public bool? ChangesOnly; 29 | 30 | public string NotificationEmail; 31 | 32 | public string ReportingPeriodName; 33 | 34 | public List Entities = new List(); 35 | 36 | protected AbstractConsolidation(string controlId = null) : base(controlId) 37 | { 38 | } 39 | 40 | } 41 | } -------------------------------------------------------------------------------- /Intacct.SDK/Functions/InventoryControl/WarehouseDelete.cs: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2022 Sage Intacct, Inc. 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"). You may not 5 | * use this file except in compliance with the License. You may obtain a copy 6 | * of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * or in the "LICENSE" file accompanying this file. This file is distributed on 11 | * an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either 12 | * express or implied. See the License for the specific language governing 13 | * permissions and limitations under the License. 14 | */ 15 | 16 | using Intacct.SDK.Xml; 17 | 18 | namespace Intacct.SDK.Functions.InventoryControl 19 | { 20 | public class WarehouseDelete : AbstractWarehouse 21 | { 22 | 23 | public WarehouseDelete(string controlId = null) : base(controlId) 24 | { 25 | } 26 | 27 | public override void WriteXml(ref IaXmlWriter xml) 28 | { 29 | xml.WriteStartElement("function"); 30 | xml.WriteAttribute("controlid", ControlId, true); 31 | 32 | xml.WriteStartElement("delete"); 33 | xml.WriteElement("object", "WAREHOUSE"); 34 | xml.WriteElement("keys", RecordNo, true); 35 | 36 | xml.WriteEndElement(); //delete 37 | 38 | xml.WriteEndElement(); //function 39 | } 40 | 41 | } 42 | } -------------------------------------------------------------------------------- /Intacct.SDK/Functions/Company/AbstractAllocationLine.cs: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2022 Sage Intacct, Inc. 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"). You may not 5 | * use this file except in compliance with the License. You may obtain a copy 6 | * of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * or in the "LICENSE" file accompanying this file. This file is distributed on 11 | * an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either 12 | * express or implied. See the License for the specific language governing 13 | * permissions and limitations under the License. 14 | */ 15 | 16 | using Intacct.SDK.Xml; 17 | 18 | namespace Intacct.SDK.Functions.Company 19 | { 20 | public abstract class AbstractAllocationLine : IXmlObject 21 | { 22 | 23 | public decimal? Amount; 24 | 25 | public string DepartmentId; 26 | 27 | public string LocationId; 28 | 29 | public string ProjectId; 30 | 31 | public string CustomerId; 32 | 33 | public string VendorId; 34 | 35 | public string EmployeeId; 36 | 37 | public string ItemId; 38 | 39 | public string ClassId; 40 | 41 | public string ContractId; 42 | 43 | public string WarehouseId; 44 | 45 | protected AbstractAllocationLine() 46 | { 47 | } 48 | 49 | public abstract void WriteXml(ref IaXmlWriter xml); 50 | } 51 | } -------------------------------------------------------------------------------- /Intacct.SDK/Functions/ContractsRevMgmt/ContractLineDelete.cs: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2022 Sage Intacct, Inc. 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"). You may not 5 | * use this file except in compliance with the License. You may obtain a copy 6 | * of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * or in the "LICENSE" file accompanying this file. This file is distributed on 11 | * an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either 12 | * express or implied. See the License for the specific language governing 13 | * permissions and limitations under the License. 14 | */ 15 | 16 | using Intacct.SDK.Xml; 17 | 18 | namespace Intacct.SDK.Functions.ContractsRevMgmt 19 | { 20 | public class ContractLineDelete : AbstractContract 21 | { 22 | 23 | public ContractLineDelete(string controlId = null) : base(controlId) 24 | { 25 | } 26 | 27 | public override void WriteXml(ref IaXmlWriter xml) 28 | { 29 | xml.WriteStartElement("function"); 30 | xml.WriteAttribute("controlid", ControlId, true); 31 | 32 | xml.WriteStartElement("delete"); 33 | xml.WriteElement("object", "CONTRACTDETAIL"); 34 | xml.WriteElement("keys", RecordNo, true); 35 | 36 | xml.WriteEndElement(); //delete 37 | 38 | xml.WriteEndElement(); //function 39 | } 40 | 41 | } 42 | } -------------------------------------------------------------------------------- /Intacct.SDK/Functions/EmployeeExpenses/ExpenseReportDelete.cs: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2022 Sage Intacct, Inc. 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"). You may not 5 | * use this file except in compliance with the License. You may obtain a copy 6 | * of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * or in the "LICENSE" file accompanying this file. This file is distributed on 11 | * an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either 12 | * express or implied. See the License for the specific language governing 13 | * permissions and limitations under the License. 14 | */ 15 | 16 | using Intacct.SDK.Xml; 17 | 18 | namespace Intacct.SDK.Functions.EmployeeExpenses 19 | { 20 | public class ExpenseReportDelete : AbstractExpenseReport 21 | { 22 | 23 | public ExpenseReportDelete(string controlId = null) : base(controlId) 24 | { 25 | } 26 | 27 | public override void WriteXml(ref IaXmlWriter xml) 28 | { 29 | xml.WriteStartElement("function"); 30 | xml.WriteAttribute("controlid", ControlId, true); 31 | 32 | xml.WriteStartElement("delete_expensereport"); 33 | 34 | xml.WriteAttribute("key", RecordNo, true); 35 | 36 | xml.WriteEndElement(); //delete_expensereport 37 | 38 | xml.WriteEndElement(); //function 39 | } 40 | 41 | } 42 | } -------------------------------------------------------------------------------- /Intacct.SDK/Functions/AccountsReceivable/InvoiceLineTaxEntriesCreate.cs: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2022 Sage Intacct, Inc. 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"). You may not 5 | * use this file except in compliance with the License. You may obtain a copy 6 | * of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * or in the "LICENSE" file accompanying this file. This file is distributed on 11 | * an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either 12 | * express or implied. See the License for the specific language governing 13 | * permissions and limitations under the License. 14 | */ 15 | 16 | using Intacct.SDK.Xml; 17 | using System; 18 | using System.Collections.Generic; 19 | using System.Text; 20 | 21 | namespace Intacct.SDK.Functions.AccountsReceivable 22 | { 23 | public class InvoiceLineTaxEntriesCreate:AbstractInvoiceLineTaxEntries 24 | { 25 | public InvoiceLineTaxEntriesCreate() 26 | { 27 | } 28 | 29 | public override void WriteXml(ref IaXmlWriter xml) 30 | { 31 | //xml.WriteStartElement("taxentries"); 32 | xml.WriteStartElement("taxentry"); 33 | 34 | xml.WriteElement("detailid", TaxId); 35 | xml.WriteElement("trx_tax", TaxValue); 36 | 37 | xml.WriteEndElement();//taxentry 38 | //xml.WriteEndElement(); //taxentries 39 | } 40 | } 41 | } 42 | -------------------------------------------------------------------------------- /Intacct.SDK/Functions/Company/UserEffectivePermissionList.cs: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2022 Sage Intacct, Inc. 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"). You may not 5 | * use this file except in compliance with the License. You may obtain a copy 6 | * of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * or in the "LICENSE" file accompanying this file. This file is distributed on 11 | * an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either 12 | * express or implied. See the License for the specific language governing 13 | * permissions and limitations under the License. 14 | */ 15 | 16 | using Intacct.SDK.Xml; 17 | 18 | namespace Intacct.SDK.Functions.Company 19 | { 20 | public class UserEffectivePermissionList : AbstractFunction 21 | { 22 | public string UserId { get; set; } 23 | public UserEffectivePermissionList(string controlId = null) : base(controlId) 24 | { 25 | } 26 | 27 | public override void WriteXml(ref IaXmlWriter xml) 28 | { 29 | xml.WriteStartElement("function"); 30 | xml.WriteAttribute("controlid", ControlId, true); 31 | 32 | xml.WriteStartElement("getUserPermissions"); 33 | 34 | xml.WriteElement("userId", UserId); 35 | 36 | xml.WriteEndElement(); //getUserPermissions 37 | xml.WriteEndElement(); //function 38 | } 39 | } 40 | } 41 | -------------------------------------------------------------------------------- /Intacct.SDK/Functions/GeneralLedger/JournalEntryDelete.cs: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2022 Sage Intacct, Inc. 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"). You may not 5 | * use this file except in compliance with the License. You may obtain a copy 6 | * of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * or in the "LICENSE" file accompanying this file. This file is distributed on 11 | * an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either 12 | * express or implied. See the License for the specific language governing 13 | * permissions and limitations under the License. 14 | */ 15 | 16 | using Intacct.SDK.Xml; 17 | 18 | namespace Intacct.SDK.Functions.GeneralLedger 19 | { 20 | public class JournalEntryDelete : AbstractJournalEntry 21 | { 22 | 23 | public JournalEntryDelete(string controlId = null) : base(controlId) 24 | { 25 | } 26 | 27 | public override void WriteXml(ref IaXmlWriter xml) 28 | { 29 | xml.WriteStartElement("function"); 30 | xml.WriteAttribute("controlid", ControlId, true); 31 | 32 | xml.WriteStartElement("delete"); 33 | xml.WriteElement("object", "GLBATCH"); 34 | 35 | xml.WriteElement("keys", RecordNo, true); 36 | 37 | xml.WriteEndElement(); //delete 38 | 39 | xml.WriteEndElement(); //function 40 | } 41 | 42 | } 43 | } -------------------------------------------------------------------------------- /Intacct.SDK/Functions/GeneralLedger/StatisticalAccountDelete.cs: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2022 Sage Intacct, Inc. 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"). You may not 5 | * use this file except in compliance with the License. You may obtain a copy 6 | * of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * or in the "LICENSE" file accompanying this file. This file is distributed on 11 | * an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either 12 | * express or implied. See the License for the specific language governing 13 | * permissions and limitations under the License. 14 | */ 15 | 16 | using Intacct.SDK.Xml; 17 | 18 | namespace Intacct.SDK.Functions.GeneralLedger 19 | { 20 | public class StatisticalAccountDelete : AbstractAccount 21 | { 22 | 23 | public StatisticalAccountDelete(string controlId = null) : base(controlId) 24 | { 25 | } 26 | 27 | public override void WriteXml(ref IaXmlWriter xml) 28 | { 29 | xml.WriteStartElement("function"); 30 | xml.WriteAttribute("controlid", ControlId, true); 31 | 32 | xml.WriteStartElement("delete_statglaccount"); 33 | 34 | xml.WriteAttribute("glaccountno", AccountNo, true); 35 | 36 | xml.WriteEndElement(); //delete_statglaccount 37 | 38 | xml.WriteEndElement(); //function 39 | } 40 | 41 | } 42 | } -------------------------------------------------------------------------------- /Intacct.SDK/Functions/Projects/AbstractTimesheet.cs: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2022 Sage Intacct, Inc. 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"). You may not 5 | * use this file except in compliance with the License. You may obtain a copy 6 | * of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * or in the "LICENSE" file accompanying this file. This file is distributed on 11 | * an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either 12 | * express or implied. See the License for the specific language governing 13 | * permissions and limitations under the License. 14 | */ 15 | 16 | using System; 17 | using System.Collections.Generic; 18 | 19 | namespace Intacct.SDK.Functions.Projects 20 | { 21 | public abstract class AbstractTimesheet : AbstractFunction 22 | { 23 | 24 | public int RecordNo; 25 | 26 | public string EmployeeId; 27 | 28 | public DateTime BeginDate; 29 | 30 | public string Description; 31 | 32 | public string AttachmentsId; 33 | 34 | public string Action; 35 | 36 | public List Entries = new List(); 37 | 38 | public Dictionary CustomFields = new Dictionary(); 39 | 40 | protected AbstractTimesheet(string controlId = null) : base(controlId) 41 | { 42 | } 43 | 44 | } 45 | } -------------------------------------------------------------------------------- /Intacct.SDK.Tests/Functions/DataDeliveryService/DdsObjectListTest.cs: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2022 Sage Intacct, Inc. 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"). You may not 5 | * use this file except in compliance with the License. You may obtain a copy 6 | * of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * or in the "LICENSE" file accompanying this file. This file is distributed on 11 | * an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either 12 | * express or implied. See the License for the specific language governing 13 | * permissions and limitations under the License. 14 | */ 15 | 16 | using System.Collections.Generic; 17 | using System.IO; 18 | using System.Text; 19 | using System.Xml; 20 | using Intacct.SDK.Functions.DataDeliveryService; 21 | using Intacct.SDK.Functions; 22 | using Intacct.SDK.Tests.Xml; 23 | using Intacct.SDK.Xml; 24 | using Xunit; 25 | 26 | namespace Intacct.SDK.Tests.Functions.DataDeliveryService 27 | { 28 | public class DdsObjectListTest : XmlObjectTestHelper 29 | { 30 | [Fact] 31 | public void GetXmlTest() 32 | { 33 | string expected = @" 34 | 35 | 36 | "; 37 | 38 | DdsObjectList record = new DdsObjectList("unittest"); 39 | this.CompareXml(expected, record); 40 | } 41 | } 42 | } -------------------------------------------------------------------------------- /Intacct.SDK/Functions/OrderEntry/OrderEntryTransactionDelete.cs: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2022 Sage Intacct, Inc. 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"). You may not 5 | * use this file except in compliance with the License. You may obtain a copy 6 | * of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * or in the "LICENSE" file accompanying this file. This file is distributed on 11 | * an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either 12 | * express or implied. See the License for the specific language governing 13 | * permissions and limitations under the License. 14 | */ 15 | 16 | using Intacct.SDK.Xml; 17 | 18 | namespace Intacct.SDK.Functions.OrderEntry 19 | { 20 | public class OrderEntryTransactionDelete : AbstractOrderEntryTransaction 21 | { 22 | 23 | public OrderEntryTransactionDelete(string controlId = null) : base(controlId) 24 | { 25 | } 26 | 27 | public override void WriteXml(ref IaXmlWriter xml) 28 | { 29 | xml.WriteStartElement("function"); 30 | xml.WriteAttribute("controlid", ControlId, true); 31 | 32 | xml.WriteStartElement("delete_sotransaction"); 33 | 34 | xml.WriteAttribute("key", DocumentId, true); 35 | 36 | xml.WriteEndElement(); //delete_sotransaction 37 | 38 | xml.WriteEndElement(); //function 39 | } 40 | 41 | } 42 | } -------------------------------------------------------------------------------- /Intacct.SDK/Functions/Purchasing/PurchasingTransactionDelete.cs: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2022 Sage Intacct, Inc. 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"). You may not 5 | * use this file except in compliance with the License. You may obtain a copy 6 | * of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * or in the "LICENSE" file accompanying this file. This file is distributed on 11 | * an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either 12 | * express or implied. See the License for the specific language governing 13 | * permissions and limitations under the License. 14 | */ 15 | 16 | using Intacct.SDK.Xml; 17 | 18 | namespace Intacct.SDK.Functions.Purchasing 19 | { 20 | public class PurchasingTransactionDelete : AbstractPurchasingTransaction 21 | { 22 | 23 | public PurchasingTransactionDelete(string controlId = null) : base(controlId) 24 | { 25 | } 26 | 27 | public override void WriteXml(ref IaXmlWriter xml) 28 | { 29 | xml.WriteStartElement("function"); 30 | xml.WriteAttribute("controlid", ControlId, true); 31 | 32 | xml.WriteStartElement("delete_potransaction"); 33 | 34 | xml.WriteAttribute("key", DocumentId, true); 35 | 36 | xml.WriteEndElement(); //delete_potransaction 37 | 38 | xml.WriteEndElement(); //function 39 | } 40 | 41 | } 42 | } -------------------------------------------------------------------------------- /Intacct.SDK/Functions/InventoryControl/InventoryTransactionDelete.cs: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2022 Sage Intacct, Inc. 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"). You may not 5 | * use this file except in compliance with the License. You may obtain a copy 6 | * of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * or in the "LICENSE" file accompanying this file. This file is distributed on 11 | * an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either 12 | * express or implied. See the License for the specific language governing 13 | * permissions and limitations under the License. 14 | */ 15 | 16 | using Intacct.SDK.Xml; 17 | 18 | namespace Intacct.SDK.Functions.InventoryControl 19 | { 20 | public class InventoryTransactionDelete : AbstractInventoryTransaction 21 | { 22 | 23 | public InventoryTransactionDelete(string controlId = null) : base(controlId) 24 | { 25 | } 26 | 27 | public override void WriteXml(ref IaXmlWriter xml) 28 | { 29 | xml.WriteStartElement("function"); 30 | xml.WriteAttribute("controlid", ControlId, true); 31 | 32 | xml.WriteStartElement("delete_ictransaction"); 33 | 34 | xml.WriteAttribute("key", DocumentId, true); 35 | 36 | xml.WriteEndElement(); //delete_ictransaction 37 | 38 | xml.WriteEndElement(); //function 39 | } 40 | 41 | } 42 | } -------------------------------------------------------------------------------- /Intacct.SDK/Xml/OfflineResponse.cs: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2022 Sage Intacct, Inc. 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"). You may not 5 | * use this file except in compliance with the License. You may obtain a copy 6 | * of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * or in the "LICENSE" file accompanying this file. This file is distributed on 11 | * an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either 12 | * express or implied. See the License for the specific language governing 13 | * permissions and limitations under the License. 14 | */ 15 | 16 | using System.IO; 17 | using Intacct.SDK.Exceptions; 18 | 19 | namespace Intacct.SDK.Xml 20 | { 21 | public class OfflineResponse: AbstractResponse 22 | { 23 | public string Status { get; } 24 | 25 | public OfflineResponse(Stream body) : base(body) 26 | { 27 | var acknowledgement = Response.Element("acknowledgement"); 28 | if (acknowledgement == null) 29 | { 30 | throw new IntacctException("Response is missing acknowledgement block"); 31 | } 32 | 33 | var status = acknowledgement.Element("status"); 34 | if (status == null) 35 | { 36 | throw new IntacctException("Acknowledgement block is missing status element"); 37 | } 38 | this.Status = status.Value; 39 | } 40 | } 41 | } -------------------------------------------------------------------------------- /Intacct.SDK.Tests/Functions/Company/UserEffectivePermissionListTest.cs: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2022 Sage Intacct, Inc. 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"). You may not 5 | * use this file except in compliance with the License. You may obtain a copy 6 | * of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * or in the "LICENSE" file accompanying this file. This file is distributed on 11 | * an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either 12 | * express or implied. See the License for the specific language governing 13 | * permissions and limitations under the License. 14 | */ 15 | 16 | using Intacct.SDK.Functions.Company; 17 | using Intacct.SDK.Tests.Xml; 18 | using Xunit; 19 | 20 | namespace Intacct.SDK.Tests.Functions.Company 21 | { 22 | public class UserEffectivePermissionListTest : XmlObjectTestHelper 23 | { 24 | [Fact] 25 | public void GetXmlTest() 26 | { 27 | string expected = @" 28 | 29 | 30 | USERID 31 | 32 | "; 33 | 34 | UserEffectivePermissionList apiFunction = new UserEffectivePermissionList("unittest") 35 | { 36 | UserId = "USERID" 37 | }; 38 | 39 | this.CompareXml(expected, apiFunction); 40 | } 41 | } 42 | } 43 | -------------------------------------------------------------------------------- /Intacct.SDK/Functions/EmployeeExpenses/ExpenseAdjustmentDelete.cs: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2022 Sage Intacct, Inc. 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"). You may not 5 | * use this file except in compliance with the License. You may obtain a copy 6 | * of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * or in the "LICENSE" file accompanying this file. This file is distributed on 11 | * an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either 12 | * express or implied. See the License for the specific language governing 13 | * permissions and limitations under the License. 14 | */ 15 | 16 | using Intacct.SDK.Xml; 17 | 18 | namespace Intacct.SDK.Functions.EmployeeExpenses 19 | { 20 | public class ExpenseAdjustmentDelete : AbstractExpenseAdjustment 21 | { 22 | 23 | public ExpenseAdjustmentDelete(string controlId = null) : base(controlId) 24 | { 25 | } 26 | 27 | public override void WriteXml(ref IaXmlWriter xml) 28 | { 29 | xml.WriteStartElement("function"); 30 | xml.WriteAttribute("controlid", ControlId, true); 31 | 32 | xml.WriteStartElement("delete_expenseadjustmentreport"); 33 | 34 | xml.WriteAttribute("key", RecordNo); 35 | 36 | xml.WriteEndElement(); //delete_expenseadjustmentreport 37 | 38 | xml.WriteEndElement(); //function 39 | } 40 | 41 | } 42 | } -------------------------------------------------------------------------------- /Intacct.SDK.Tests/Functions/Common/Query/QueryStringTest.cs: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2022 Sage Intacct, Inc. 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"). You may not 5 | * use this file except in compliance with the License. You may obtain a copy 6 | * of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * or in the "LICENSE" file accompanying this file. This file is distributed on 11 | * an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either 12 | * express or implied. See the License for the specific language governing 13 | * permissions and limitations under the License. 14 | */ 15 | 16 | using Intacct.SDK.Functions.Common.Query; 17 | using Xunit; 18 | 19 | namespace Intacct.SDK.Tests.Functions.Common.Query 20 | { 21 | public class QueryStringTest 22 | { 23 | [Fact] 24 | public void TestConstructorToString() 25 | { 26 | string expected = "VENDORID = 'V1234'"; 27 | QueryString condition = new QueryString(expected); 28 | Assert.Equal(expected, condition.ToString()); 29 | } 30 | 31 | [Fact] 32 | public void TestSetterToString() 33 | { 34 | string expected = "VENDORID = 'V1234'"; 35 | QueryString condition = new QueryString 36 | { 37 | Query = expected 38 | }; 39 | 40 | Assert.Equal(expected, condition.ToString()); 41 | } 42 | } 43 | } -------------------------------------------------------------------------------- /Intacct.SDK/Functions/GeneralLedger/StatisticalJournalEntryDelete.cs: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2022 Sage Intacct, Inc. 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"). You may not 5 | * use this file except in compliance with the License. You may obtain a copy 6 | * of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * or in the "LICENSE" file accompanying this file. This file is distributed on 11 | * an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either 12 | * express or implied. See the License for the specific language governing 13 | * permissions and limitations under the License. 14 | */ 15 | 16 | using Intacct.SDK.Xml; 17 | 18 | namespace Intacct.SDK.Functions.GeneralLedger 19 | { 20 | public class StatisticalJournalEntryDelete : AbstractStatisticalJournalEntry 21 | { 22 | 23 | public StatisticalJournalEntryDelete(string controlId = null) : base(controlId) 24 | { 25 | } 26 | 27 | public override void WriteXml(ref IaXmlWriter xml) 28 | { 29 | xml.WriteStartElement("function"); 30 | xml.WriteAttribute("controlid", ControlId, true); 31 | 32 | xml.WriteStartElement("delete"); 33 | 34 | xml.WriteElement("object", "GLBATCH"); 35 | xml.WriteElement("keys", RecordNo, true); 36 | 37 | xml.WriteEndElement(); //delete 38 | 39 | xml.WriteEndElement(); //function 40 | } 41 | 42 | } 43 | } -------------------------------------------------------------------------------- /Intacct.SDK/Functions/ApiSessionCreate.cs: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2022 Sage Intacct, Inc. 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"). You may not 5 | * use this file except in compliance with the License. You may obtain a copy 6 | * of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * or in the "LICENSE" file accompanying this file. This file is distributed on 11 | * an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either 12 | * express or implied. See the License for the specific language governing 13 | * permissions and limitations under the License. 14 | */ 15 | 16 | using Intacct.SDK.Xml; 17 | 18 | namespace Intacct.SDK.Functions 19 | { 20 | public class ApiSessionCreate : AbstractFunction 21 | { 22 | 23 | public string EntityId; 24 | 25 | public ApiSessionCreate(string controlId = "") : base(controlId) 26 | { 27 | } 28 | 29 | public override void WriteXml(ref IaXmlWriter xml) 30 | { 31 | xml.WriteStartElement("function"); 32 | xml.WriteAttributeString("controlid", ControlId); 33 | 34 | xml.WriteStartElement("getAPISession"); 35 | 36 | if (EntityId != null) 37 | { 38 | xml.WriteElementString("locationid", EntityId); 39 | } 40 | 41 | xml.WriteEndElement(); //getAPISession 42 | 43 | xml.WriteEndElement(); //function 44 | } 45 | } 46 | } -------------------------------------------------------------------------------- /Intacct.SDK/Functions/DataDeliveryService/DdsObjectDdlGet.cs: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2022 Sage Intacct, Inc. 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"). You may not 5 | * use this file except in compliance with the License. You may obtain a copy 6 | * of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * or in the "LICENSE" file accompanying this file. This file is distributed on 11 | * an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either 12 | * express or implied. See the License for the specific language governing 13 | * permissions and limitations under the License. 14 | */ 15 | 16 | using Intacct.SDK.Xml; 17 | 18 | namespace Intacct.SDK.Functions.DataDeliveryService 19 | { 20 | public class DdsObjectDdlGet : AbstractFunction 21 | { 22 | 23 | public string ObjectName; 24 | 25 | public DdsObjectDdlGet(string controlId = null) : base(controlId) 26 | { 27 | } 28 | 29 | public override void WriteXml(ref IaXmlWriter xml) 30 | { 31 | xml.WriteStartElement("function"); 32 | xml.WriteAttribute("controlid", ControlId); 33 | 34 | xml.WriteStartElement("getDdsDdl"); 35 | 36 | xml.WriteElement("object", ObjectName, true); 37 | 38 | xml.WriteEndElement(); //getDdsDdl 39 | 40 | xml.WriteEndElement(); //function 41 | } 42 | 43 | } 44 | } -------------------------------------------------------------------------------- /Intacct.SDK.Tests/Functions/Projects/TaskDeleteTest.cs: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2022 Sage Intacct, Inc. 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"). You may not 5 | * use this file except in compliance with the License. You may obtain a copy 6 | * of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * or in the "LICENSE" file accompanying this file. This file is distributed on 11 | * an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either 12 | * express or implied. See the License for the specific language governing 13 | * permissions and limitations under the License. 14 | */ 15 | 16 | using System.Collections.Generic; 17 | using System.IO; 18 | using System.Text; 19 | using System.Xml; 20 | using Intacct.SDK.Functions.Projects; 21 | using Intacct.SDK.Functions; 22 | using Intacct.SDK.Tests.Xml; 23 | using Intacct.SDK.Xml; 24 | using Xunit; 25 | 26 | namespace Intacct.SDK.Tests.Functions.Projects 27 | { 28 | public class TaskDeleteTest : XmlObjectTestHelper 29 | { 30 | [Fact] 31 | public void GetXmlTest() 32 | { 33 | string expected = @" 34 | 35 | 36 | "; 37 | 38 | TaskDelete record = new TaskDelete("unittest") 39 | { 40 | RecordNo = 1234 41 | }; 42 | this.CompareXml(expected, record); 43 | } 44 | } 45 | } -------------------------------------------------------------------------------- /Intacct.SDK/Functions/Common/NewQuery/IQueryFunction.cs: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2022 Sage Intacct, Inc. 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"). You may not 5 | * use this file except in compliance with the License. You may obtain a copy 6 | * of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * or in the "LICENSE" file accompanying this file. This file is distributed on 11 | * an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either 12 | * express or implied. See the License for the specific language governing 13 | * permissions and limitations under the License. 14 | */ 15 | 16 | using Intacct.SDK.Functions.Common.NewQuery.QueryFilter; 17 | using Intacct.SDK.Functions.Common.NewQuery.QueryOrderBy; 18 | using Intacct.SDK.Functions.Common.NewQuery.QuerySelect; 19 | using Intacct.SDK.Xml; 20 | 21 | namespace Intacct.SDK.Functions.Common.NewQuery 22 | { 23 | public interface IQueryFunction : IFunction 24 | { 25 | 26 | ISelect[] SelectFields { get; set; } 27 | 28 | string FromObject { get; set; } 29 | 30 | string DocParId { get; set; } 31 | 32 | IFilter Filter { get; set; } 33 | 34 | IOrder[] OrderBy { get; set; } 35 | 36 | bool? CaseInsensitive { get; set; } 37 | 38 | int? PageSize { get; set; } 39 | 40 | int? Offset { get; set; } 41 | 42 | new void WriteXml(ref IaXmlWriter xml); 43 | } 44 | } -------------------------------------------------------------------------------- /Intacct.SDK.Tests/Functions/AccountsPayable/ApPaymentDeclineTest.cs: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2022 Sage Intacct, Inc. 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"). You may not 5 | * use this file except in compliance with the License. You may obtain a copy 6 | * of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * or in the "LICENSE" file accompanying this file. This file is distributed on 11 | * an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either 12 | * express or implied. See the License for the specific language governing 13 | * permissions and limitations under the License. 14 | */ 15 | 16 | using Intacct.SDK.Functions.AccountsPayable; 17 | using Intacct.SDK.Tests.Xml; 18 | using Xunit; 19 | 20 | namespace Intacct.SDK.Tests.Functions.AccountsPayable 21 | { 22 | public class ApPaymentDeclineTest : XmlObjectTestHelper 23 | { 24 | [Fact] 25 | public void GetXmlTest() 26 | { 27 | string expected = @" 28 | 29 | 30 | 31 | 1234 32 | 33 | 34 | "; 35 | 36 | AbstractApPaymentFunction record = ApPaymentFactory.Create(AbstractApPaymentFunction.Decline, 1234, "unittest"); 37 | 38 | this.CompareXml(expected, record); 39 | } 40 | } 41 | 42 | } -------------------------------------------------------------------------------- /Intacct.SDK.Tests/Functions/AccountsReceivable/InvoiceLineTaxEntriesCreateTest.cs: -------------------------------------------------------------------------------- 1 | using Intacct.SDK.Functions.AccountsReceivable; 2 | using Intacct.SDK.Tests.Xml; 3 | using System; 4 | using System.Collections.Generic; 5 | using System.Linq; 6 | using System.Text; 7 | using System.Threading.Tasks; 8 | using Xunit; 9 | 10 | namespace Intacct.SDK.Tests.Functions.AccountsReceivable 11 | { 12 | public class InvoiceLineTaxEntriesCreateTest: XmlObjectTestHelper 13 | { 14 | [Fact] 15 | public void GetXmlTest() 16 | { 17 | string expected = @" 18 | 19 | TaxName 20 | "; 21 | 22 | 23 | InvoiceLineTaxEntriesCreate taxEntries = new InvoiceLineTaxEntriesCreate() 24 | { 25 | TaxId="TaxName" 26 | }; 27 | 28 | this.CompareXml(expected, taxEntries); 29 | } 30 | [Fact] 31 | public void GetAllXmlTest() 32 | { 33 | string expected = @" 34 | 35 | TaxName 36 | 10 37 | "; 38 | InvoiceLineTaxEntriesCreate taxEntries = new InvoiceLineTaxEntriesCreate() 39 | { 40 | TaxId = "TaxName", 41 | TaxValue=10 42 | 43 | }; 44 | 45 | this.CompareXml(expected, taxEntries); 46 | } 47 | 48 | } 49 | } 50 | -------------------------------------------------------------------------------- /Intacct.SDK.Tests/Functions/Company/ClassDeleteTest.cs: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2022 Sage Intacct, Inc. 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"). You may not 5 | * use this file except in compliance with the License. You may obtain a copy 6 | * of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * or in the "LICENSE" file accompanying this file. This file is distributed on 11 | * an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either 12 | * express or implied. See the License for the specific language governing 13 | * permissions and limitations under the License. 14 | */ 15 | 16 | using System.Collections.Generic; 17 | using System.IO; 18 | using System.Text; 19 | using System.Xml; 20 | using Intacct.SDK.Functions.Company; 21 | using Intacct.SDK.Functions; 22 | using Intacct.SDK.Tests.Xml; 23 | using Intacct.SDK.Xml; 24 | using Xunit; 25 | 26 | namespace Intacct.SDK.Tests.Functions.Company 27 | { 28 | public class ClassDeleteTest : XmlObjectTestHelper 29 | { 30 | [Fact] 31 | public void GetXmlTest() 32 | { 33 | string expected = @" 34 | 35 | 36 | "; 37 | 38 | ClassDelete record = new ClassDelete("unittest") 39 | { 40 | ClassId = "C1234", 41 | }; 42 | this.CompareXml(expected, record); 43 | } 44 | } 45 | } -------------------------------------------------------------------------------- /Intacct.SDK.Tests/Functions/GeneralLedger/AccountDeleteTest.cs: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2022 Sage Intacct, Inc. 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"). You may not 5 | * use this file except in compliance with the License. You may obtain a copy 6 | * of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * or in the "LICENSE" file accompanying this file. This file is distributed on 11 | * an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either 12 | * express or implied. See the License for the specific language governing 13 | * permissions and limitations under the License. 14 | */ 15 | 16 | using System.Collections.Generic; 17 | using System.IO; 18 | using System.Text; 19 | using System.Xml; 20 | using Intacct.SDK.Functions.GeneralLedger; 21 | using Intacct.SDK.Tests.Xml; 22 | using Intacct.SDK.Xml; 23 | using Xunit; 24 | 25 | namespace Intacct.SDK.Tests.Functions.GeneralLedger 26 | { 27 | public class AccountDeleteTest : XmlObjectTestHelper 28 | { 29 | [Fact] 30 | public void GetXmlTest() 31 | { 32 | string expected = @" 33 | 34 | 35 | "; 36 | 37 | AccountDelete record = new AccountDelete("unittest") 38 | { 39 | AccountNo = "1010" 40 | }; 41 | this.CompareXml(expected, record); 42 | } 43 | } 44 | } -------------------------------------------------------------------------------- /Intacct.SDK/Functions/Common/Query/Comparison/InList/InListString.cs: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2022 Sage Intacct, Inc. 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"). You may not 5 | * use this file except in compliance with the License. You may obtain a copy 6 | * of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * or in the "LICENSE" file accompanying this file. This file is distributed on 11 | * an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either 12 | * express or implied. See the License for the specific language governing 13 | * permissions and limitations under the License. 14 | */ 15 | 16 | using System.Collections.Generic; 17 | 18 | namespace Intacct.SDK.Functions.Common.Query.Comparison.InList 19 | { 20 | public class InListString : AbstractListString 21 | { 22 | public override string ToString() 23 | { 24 | string clause = ""; 25 | string notClause = ""; 26 | 27 | if (Negate == true) 28 | { 29 | notClause = " NOT"; 30 | } 31 | 32 | List pieces = new List(); 33 | foreach (string piece in ValuesList) 34 | { 35 | pieces.Add("'" + piece.Replace("'", "\'") + "'"); 36 | } 37 | 38 | clause = Field + notClause + " IN (" + string.Join(",", pieces) + ")"; 39 | 40 | return clause; 41 | } 42 | } 43 | } -------------------------------------------------------------------------------- /Intacct.SDK/Functions/Company/AbstractUser.cs: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2022 Sage Intacct, Inc. 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"). You may not 5 | * use this file except in compliance with the License. You may obtain a copy 6 | * of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * or in the "LICENSE" file accompanying this file. This file is distributed on 11 | * an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either 12 | * express or implied. See the License for the specific language governing 13 | * permissions and limitations under the License. 14 | */ 15 | 16 | using System.Collections.Generic; 17 | 18 | namespace Intacct.SDK.Functions.Company 19 | { 20 | public abstract class AbstractUser : AbstractFunction 21 | { 22 | 23 | public string UserId; 24 | 25 | public string UserName; 26 | 27 | public string UserType; 28 | 29 | public bool? Active; 30 | 31 | public bool? WebServicesOnly; 32 | 33 | public List RestrictedEntities = new List(); 34 | 35 | public List RestrictedDepartments = new List(); 36 | 37 | public bool? SsoEnabled; 38 | 39 | public string SsoFederatedId; 40 | 41 | public Dictionary CustomFields = new Dictionary(); 42 | 43 | protected AbstractUser(string controlId = null) : base(controlId) 44 | { 45 | } 46 | 47 | } 48 | } -------------------------------------------------------------------------------- /Intacct.SDK/Functions/GlobalConsolidations/ConsolidationEntity.cs: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2022 Sage Intacct, Inc. 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"). You may not 5 | * use this file except in compliance with the License. You may obtain a copy 6 | * of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * or in the "LICENSE" file accompanying this file. This file is distributed on 11 | * an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either 12 | * express or implied. See the License for the specific language governing 13 | * permissions and limitations under the License. 14 | */ 15 | 16 | using Intacct.SDK.Xml; 17 | 18 | namespace Intacct.SDK.Functions.GlobalConsolidations 19 | { 20 | public class ConsolidationEntity : IXmlObject 21 | { 22 | public string EntityId; 23 | 24 | public decimal EndingSpotRate; 25 | 26 | public decimal WeightedAverageRate; 27 | 28 | public ConsolidationEntity() 29 | { 30 | } 31 | 32 | public void WriteXml(ref IaXmlWriter xml) 33 | { 34 | xml.WriteStartElement("csnentity"); 35 | 36 | xml.WriteElement("entityid", EntityId, true); 37 | 38 | // Rates support up to 10 decimal places 39 | xml.WriteElement("bsrate", EndingSpotRate); 40 | xml.WriteElement("warate", WeightedAverageRate); 41 | 42 | xml.WriteEndElement(); //csnentity 43 | } 44 | } 45 | } -------------------------------------------------------------------------------- /Intacct.SDK/Functions/InventoryControl/WarehouseTransferDelete.cs: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2022 Sage Intacct, Inc. 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"). You may not 5 | * use this file except in compliance with the License. You may obtain a copy 6 | * of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * or in the "LICENSE" file accompanying this file. This file is distributed on 11 | * an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either 12 | * express or implied. See the License for the specific language governing 13 | * permissions and limitations under the License. 14 | */ 15 | 16 | using System.Net.Mail; 17 | using Intacct.SDK.Xml; 18 | 19 | namespace Intacct.SDK.Functions.InventoryControl 20 | { 21 | public class WarehouseTransferDelete : AbstractWarehouseTransfer 22 | { 23 | public WarehouseTransferDelete(string controlId = null) : base(controlId) 24 | { 25 | } 26 | 27 | public override void WriteXml(ref IaXmlWriter xml) 28 | { 29 | xml.WriteStartElement("function"); 30 | xml.WriteAttribute("controlid", ControlId, true); 31 | 32 | xml.WriteStartElement("delete"); 33 | 34 | xml.WriteElement("object", "ICTRANSFER"); 35 | xml.WriteElement("keys", RecordNumber, true); 36 | 37 | xml.WriteEndElement(); //delete 38 | 39 | xml.WriteEndElement(); //function 40 | } 41 | } 42 | } -------------------------------------------------------------------------------- /Intacct.SDK/Functions/EmployeeExpenses/ReimbursementRequestItem.cs: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2022 Sage Intacct, Inc. 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"). You may not 5 | * use this file except in compliance with the License. You may obtain a copy 6 | * of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * or in the "LICENSE" file accompanying this file. This file is distributed on 11 | * an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either 12 | * express or implied. See the License for the specific language governing 13 | * permissions and limitations under the License. 14 | */ 15 | 16 | using Intacct.SDK.Xml; 17 | 18 | namespace Intacct.SDK.Functions.EmployeeExpenses 19 | { 20 | public class ReimbursementRequestItem : IXmlObject 21 | { 22 | 23 | public int ApplyToRecordId; 24 | 25 | public decimal AmountToApply; 26 | 27 | public decimal? CreditToApply; 28 | 29 | public ReimbursementRequestItem() 30 | { 31 | } 32 | 33 | public void WriteXml(ref IaXmlWriter xml) 34 | { 35 | xml.WriteStartElement("eppaymentrequestitem"); 36 | 37 | xml.WriteElement("key", ApplyToRecordId, true); 38 | xml.WriteElement("paymentamount", AmountToApply, true); 39 | 40 | xml.WriteElement("credittoapply", CreditToApply); 41 | 42 | xml.WriteEndElement(); //eppaymentrequestitem 43 | } 44 | 45 | } 46 | } -------------------------------------------------------------------------------- /Intacct.SDK.Tests/Functions/Projects/ProjectDeleteTest.cs: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2022 Sage Intacct, Inc. 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"). You may not 5 | * use this file except in compliance with the License. You may obtain a copy 6 | * of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * or in the "LICENSE" file accompanying this file. This file is distributed on 11 | * an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either 12 | * express or implied. See the License for the specific language governing 13 | * permissions and limitations under the License. 14 | */ 15 | 16 | using System.Collections.Generic; 17 | using System.IO; 18 | using System.Text; 19 | using System.Xml; 20 | using Intacct.SDK.Functions.Projects; 21 | using Intacct.SDK.Functions; 22 | using Intacct.SDK.Tests.Xml; 23 | using Intacct.SDK.Xml; 24 | using Xunit; 25 | 26 | namespace Intacct.SDK.Tests.Functions.Projects 27 | { 28 | public class ProjectDeleteTest : XmlObjectTestHelper 29 | { 30 | [Fact] 31 | public void GetXmlTest() 32 | { 33 | string expected = @" 34 | 35 | 36 | "; 37 | 38 | ProjectDelete record = new ProjectDelete("unittest") 39 | { 40 | ProjectId = "P1234", 41 | }; 42 | this.CompareXml(expected, record); 43 | } 44 | } 45 | } -------------------------------------------------------------------------------- /Intacct.SDK.Tests/Functions/Projects/TimesheetDeleteTest.cs: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2022 Sage Intacct, Inc. 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"). You may not 5 | * use this file except in compliance with the License. You may obtain a copy 6 | * of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * or in the "LICENSE" file accompanying this file. This file is distributed on 11 | * an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either 12 | * express or implied. See the License for the specific language governing 13 | * permissions and limitations under the License. 14 | */ 15 | 16 | using System.Collections.Generic; 17 | using System.IO; 18 | using System.Text; 19 | using System.Xml; 20 | using Intacct.SDK.Functions.Projects; 21 | using Intacct.SDK.Functions; 22 | using Intacct.SDK.Tests.Xml; 23 | using Intacct.SDK.Xml; 24 | using Xunit; 25 | 26 | namespace Intacct.SDK.Tests.Functions.Projects 27 | { 28 | public class TimesheetDeleteTest : XmlObjectTestHelper 29 | { 30 | [Fact] 31 | public void GetXmlTest() 32 | { 33 | string expected = @" 34 | 35 | 36 | "; 37 | 38 | TimesheetDelete record = new TimesheetDelete("unittest") 39 | { 40 | RecordNo = 1234 41 | }; 42 | this.CompareXml(expected, record); 43 | } 44 | } 45 | } -------------------------------------------------------------------------------- /Intacct.SDK/Functions/Company/AbstractAllocation.cs: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2022 Sage Intacct, Inc. 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"). You may not 5 | * use this file except in compliance with the License. You may obtain a copy 6 | * of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * or in the "LICENSE" file accompanying this file. This file is distributed on 11 | * an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either 12 | * express or implied. See the License for the specific language governing 13 | * permissions and limitations under the License. 14 | */ 15 | 16 | using System.Collections.Generic; 17 | 18 | namespace Intacct.SDK.Functions.Company 19 | { 20 | public abstract class AbstractAllocation : AbstractFunction 21 | { 22 | 23 | public const string AllocateByPercentage = "Percentage"; 24 | 25 | public const string AllocateByAbsolute = "Absolute"; 26 | 27 | public string AllocationId; 28 | 29 | public string Description; 30 | 31 | public string DocumentNo; 32 | 33 | public string AllocateBy; 34 | 35 | public string AttachmentsId; 36 | 37 | public bool? Active; 38 | 39 | public List Lines = new List(); 40 | 41 | protected AbstractAllocation(string controlId = null) : base(controlId) 42 | { 43 | } 44 | 45 | } 46 | } -------------------------------------------------------------------------------- /Intacct.SDK/Functions/OrderEntry/RecurringOrderEntryTransactionDelete.cs: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2022 Sage Intacct, Inc. 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"). You may not 5 | * use this file except in compliance with the License. You may obtain a copy 6 | * of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * or in the "LICENSE" file accompanying this file. This file is distributed on 11 | * an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either 12 | * express or implied. See the License for the specific language governing 13 | * permissions and limitations under the License. 14 | */ 15 | 16 | using System.Net.Mail; 17 | using Intacct.SDK.Xml; 18 | 19 | namespace Intacct.SDK.Functions.OrderEntry 20 | { 21 | public class RecurringOrderEntryTransactionDelete : AbstractRecurringOrderEntryTransaction 22 | { 23 | 24 | public RecurringOrderEntryTransactionDelete(string controlId = null) : base(controlId) 25 | { 26 | } 27 | 28 | public override void WriteXml(ref IaXmlWriter xml) 29 | { 30 | xml.WriteStartElement("function"); 31 | xml.WriteAttribute("controlid", ControlId, true); 32 | 33 | xml.WriteStartElement("delete_recursotransaction"); 34 | xml.WriteAttribute("key", DocumentId, true); 35 | 36 | xml.WriteEndElement(); //delete_recursotransaction 37 | xml.WriteEndElement(); //function 38 | } 39 | } 40 | } -------------------------------------------------------------------------------- /Intacct.SDK.Tests/Functions/Company/ContactDeleteTest.cs: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2022 Sage Intacct, Inc. 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"). You may not 5 | * use this file except in compliance with the License. You may obtain a copy 6 | * of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * or in the "LICENSE" file accompanying this file. This file is distributed on 11 | * an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either 12 | * express or implied. See the License for the specific language governing 13 | * permissions and limitations under the License. 14 | */ 15 | 16 | using System.Collections.Generic; 17 | using System.IO; 18 | using System.Text; 19 | using System.Xml; 20 | using Intacct.SDK.Functions.Company; 21 | using Intacct.SDK.Functions; 22 | using Intacct.SDK.Tests.Xml; 23 | using Intacct.SDK.Xml; 24 | using Xunit; 25 | 26 | namespace Intacct.SDK.Tests.Functions.Company 27 | { 28 | public class ContactDeleteTest : XmlObjectTestHelper 29 | { 30 | [Fact] 31 | public void GetXmlTest() 32 | { 33 | string expected = @" 34 | 35 | 36 | "; 37 | 38 | ContactDelete record = new ContactDelete("unittest") 39 | { 40 | ContactName = "hello" 41 | }; 42 | this.CompareXml(expected, record); 43 | } 44 | } 45 | } --------------------------------------------------------------------------------