Itgenoda059: Exact Online - Magazijnverplaatsing geeft "No lines submitted."

Het invoegen van een magazijnverplaatsing via Invantive SQL resulteert in volgende foutmelding:

itgenoda059: Statement #7 ‘commit transaction;’ beginnend op regel 17 veroorzaakte een fout.

No lines submitted. Lines are needed to create this resource.

The remote server returned an error: (500) Internal Server Error.

De achterliggende SQL heeft volgende opmaak:

use XXXXXX@eolbe;

set trace-native-calls true;

set log-native-calls-to-disk@eolbe true;

begin transaction;

insert into ExactOnlineREST.Inventory.WarehouseTransfers@eolbe (EntryDate, WarehouseFrom, WarehouseTo)
values(cast(sysdateutc as datetime), CAST('MAGAZIJN1_GUID' AS guid), CAST('MAGAZIJN1_GUID' AS guid))
identified by 'TRANSACTION1';

insert into ExactOnlineREST.Inventory.WarehouseTransferLines@eolbe (Item, Quantity)
values(CAST('...' AS guid), 10)
attach to 'TRANSACTION1';

commit transaction;

Loopt er iets mis in de opmaak van dit SQL statement?

De foutmelding itgenoda059 geeft een tekst aan die de Exact Online API teruggeeft:

No lines submitted. Lines are needed to create this resource.

De Exact API foutmelding geeft aan dat er regels ontbreken in het verzoek. De regels zouden moeten meekomen met de SQL die ik herformuleer als:

use XXXXXX

set trace-native-calls true

set log-native-calls-to-disk true

begin transaction

insert into ExactOnlineREST..WarehouseTransfers
( EntryDate
, WarehouseFrom
, WarehouseTo
)
values
( trunc(sysdateutc)
, to_guid('MAGAZIJN1_GUID')
, to_guid('MAGAZIJN1_GUID')
)
identified by 'TRANSACTION1'

insert into ExactOnlineREST..WarehouseTransferLines
( Item
, Quantity
)
values
( to_guid('ITEMGUID')
, 10
)
attach to 'TRANSACTION1'

commit transaction

Voordat we probleem gaan proberen te reproduceren een vraag: welke versie van Invantive Query Tool of Invantive SQL wordt gebruikt?

De geherformuleerde query resulteert in versie 20.2.34-PROD+2164 in dezelfde foutmelding

De error is reproduceerbaar gemaakt met:

use default

set trace-native-calls true

set log-native-calls-to-disk true

begin transaction

insert into ExactOnlineREST..WarehouseTransfers
( EntryDate
, WarehouseFrom
, WarehouseTo
)
select trunc(sysdateutc)
,      whe.id
,      whe.id
from   ExactOnlineREST..warehouses whe
where  whe.Code = '1'
identified 
by     'TRANSACTION1'

--
-- Must provide storage location from/to when the source and target
-- warehouse are identical.
--
insert into ExactOnlineREST..WarehouseTransferLines
( Item
, Quantity
, TransferID
, StorageLocationFrom
, StorageLocationTo
)
select itm.id
,      10
,      null
,      sln.id StorageLocationFrom
,      sln.id StorageLocationTo
from   exactonlinerest..items itm
join   storagelocations sln
where  itm.code = 'V001196'
attach
to     'TRANSACTION1'

commit transaction

De native call log is daarna bekeken zoals beschreven op Analyzing large volumes of native call logs on cloud platform APIs. Hier kwam naar voren:

En de volgende body:

{"EntryDate":"2021-11-08T00:00:00+01:00","WarehouseFrom":"4050ceb4-341c-407e-a2b6-7f20429065b3","WarehouseTo":"4050ceb4-341c-407e-a2b6-7f20429065b3"}

De regels van de magazijnverplaatsing zijn - anders dan verwacht met begin transaction - niet meegestuurd in de JSON.

Ik zal intern navragen waar dit fout gaat en hoe dit opgelost kan worden.

Gelieve een upgrade naar de volgende release te plaatsen en nogmaals te proberen. Deze release is terug te vinden in de kolom “Latest Production Releases” op

De nieuwe release zal netjes de verwachtte foutmelding geven:

De “Van locatie” en de “Naar locatie” mogen niet hetzelfde zijn.

Op de volgende tabellen wordt nu transactielogica ondersteund zoals beschreven op Create an Exact Online Sales Order with Details through REST Calls :

Tabelnaam Details
ExactOnlineREST.CRM.Quotations QuotationLines
ExactOnlineREST.FinancialTransaction.BankEntries BankEntryLines
ExactOnlineREST.FinancialTransaction.CashEntries CashEntryLines
ExactOnlineREST.FinancialTransaction.Transactions TransactionLines
ExactOnlineREST.GeneralJournalEntry.GeneralJournalEntries GeneralJournalEntryLines
ExactOnlineREST.Inventory.StockCounts StockCountLines
ExactOnlineREST.Inventory.WarehouseTransfers WarehouseTransferLines
ExactOnlineREST.PurchaseEntry.PurchaseEntries PurchaseEntryLines
ExactOnlineREST.Purchase.PurchaseInvoices PurchaseInvoiceLines
ExactOnlineREST.PurchaseOrder.GoodsReceipts GoodsReceiptLines
ExactOnlineREST.PurchaseOrder.PurchaseOrders PurchaseOrderLines
ExactOnlineREST.SalesEntry.SalesEntries SalesEntryLines
ExactOnlineREST.SalesInvoice.SalesInvoices SalesInvoiceLines
ExactOnlineREST.SalesOrder.GoodsDeliveries GoodsDeliveryLines
ExactOnlineREST.SalesOrder.SalesOrders SalesOrderLines
ExactOnlineREST.Subscription.Subscriptions SubscriptionLines

Opgelost in 20.2.112-PROD+2206

1 Like