bgmulinari / B1SLayer

A lightweight SAP Business One Service Layer client for .NET
MIT License
136 stars 47 forks source link

Is it possible to do more than one join in the cross join query? #58

Closed matheusfellipe closed 10 months ago

matheusfellipe commented 10 months ago

/b1s/v1/QueryService_PostQuery

{ "QueryPath" : "crossjoin(PurchaseOrders,PurchaseOrders/DocumentLines)", "QueryOption":"$expand=PurchaseOrders($select=DocEntry,DocNum),PurchaseOrders/DocumentLines($select=ItemCode,LineNum)&$filter=PurchaseOrders/DocEntry eq PurchaseOrders/DocumentLines/DocEntry and PurchaseOrders/DocEntry ge 3 and PurchaseOrders/DocumentLines/LineNum eq 0" }

Can i increase the entity number at this junction? Something like $crossjoin(PurchaseOrders,PurchaseOrders/DocumentLines,PurchaseInvoices,PurchaseInvoices/DocumentLines)

matheusfellipe commented 10 months ago

Já respondendo, é possível, incluindo os objetos na QueryPathe e colocando no Expand e Filter. { "QueryPath" : "$crossjoin(PurchaseOrders,PurchaseOrders/DocumentLines,PurchaseInvoices/DocumentLines)", "QueryOption":"$expand=PurchaseOrders($select=DocEntry,DocNum),PurchaseOrders/DocumentLines($select=ItemCode,LineNum,BaseEntry),PurchaseInvoices/DocumentLines($select=DocEntry,ItemCode)&$filter=PurchaseOrders/DocEntry eq PurchaseOrders/DocumentLines/DocEntry and PurchaseOrders/DocumentLines/DocEntry eq PurchaseInvoices/DocumentLines/BaseEntry and PurchaseOrders/DocEntry eq 01" }