Нужно наполнить данными Json. Добавил Loop с данными "goods" в json зависает в цикле.
Код: Выделить всё
DO load_goods
DO load_payments
gd &= json::CreateObject()
gd.AddItemToObject('code', json::CreateString('string'))
gd.AddItemToObject('name', json::CreateString('string'))
gd.AddItemToObject('barcode', json::CreateString('string'))
gd.AddItemToObject('excise_barcode', json::CreateString('string'))
gd.AddItemToObject('excise_barcodes', json::CreateString('string'))
gd.AddItemToObject('header', json::CreateString('string'))
gd.AddItemToObject('footer', json::CreateString('string'))
gd.AddItemToObject('price', json::CreateString('string'))
gd.AddItemToObject('tax', json::CreateArray(taxQ))
gds &= json::CreateObject()
Loop i# = 1 TO RECORDS(goods) ! ===============================
GET(goods,i#)
gds.AddItemToObject('good', gd)
gds.AddItemToObject('good_id', json::CreateString(goods.good_id))
gds.AddItemToObject('quantity', json::CreateNumber(goods.quantity))
gds.AddItemToObject('is_return', json::CreateFalse())
gds.AddItemToObject('discounts', json::CreateArray(discounts))
! MESSAGE('1: '& gds.ToString(TRUE))
END ! ===================================
!create root object
root &= json::CreateObject()
!add a string to root
root.AddItemToObject('id', json::CreateString('497f6eca-6276-4993-bfeb-53cbbbba6f08'))
root.AddItemToObject('cashier_name', json::CreateString('string'))
root.AddItemToObject('departament', json::CreateString('string'))
root.AddItemToObject('goods', json::CreateArrayReference(gds))
root.AddItemToObject('delivery', json::CreateObject(delivery))
root.AddItemToObject('discounts', json::CreateArray(discounts))
root.AddItemToObject('payments', json::CreateArray(payments))
root.AddItemToObject('rounding', json::CreateFalse())
root.AddItemToObject('header', json::CreateString('string'))
root.AddItemToObject('footer', json::CreateString('string'))
root.AddItemToObject('barcode', json::CreateString('string'))
root.AddItemToObject('order_id', json::CreateString('93101167-9065-4b9c-b98b-5d789a3ed9fe'))
root.AddItemToObject('related_receipt_id', json::CreateString('d903f598-5263-4705-9a2a-fe57ee4b2b3a'))
root.AddItemToObject('previous_receipt_id', json::CreateString('6baa5594-09b6-4656-b083-9032975dfaa0'))
root.AddItemToObject('technical_return', json::CreateFalse())
root.AddItemToObject('context', json::CreateObject(context))
root.AddItemToObject('is_pawnshop', json::CreateFalse())