(* Collection of code snippets by Arne Vajhøj *)
(* (from articles on eksperten.dk / vajhoej.dk written sometime between 2004 and now) *)
program writejson_diy(input,output);

%include 'data.inc'

var
   o : array [1..3] of order;
   i, j : integer;

begin
   %include 'init.inc'
   writeln('[');
   for i := 1 to 3 do begin
      writeln('  {');
      writeln('    "id": ', o[i].id:1, ',');
      writeln('    "customer": "', o[i].customer, '",');
      writeln('    "status": "', o[i].status, '",');
      writeln('    "orderlines": [');
      for j := 1 to o[i].nlines do begin
         writeln('      {');
         writeln('        "item": "', o[i].line[j].item, '",');
         writeln('        "qty": ', o[i].line[j].qty:1, ',');
         writeln('        "price": ', (o[i].line[j].price / 100.00):4:2);
         if j < o[i].nlines then begin
            writeln('      },');
         end else begin
            writeln('      }');
         end;
      end;
      writeln('    ]');
      if i < 3 then begin
         writeln('  },');
      end else begin
         writeln('  }');
      end;
   end;
   writeln(']');
end.
