Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- unit Unit2;
- interface
- uses
- Winapi.Windows,
- Winapi.Messages,
- System.SysUtils,
- System.Variants,
- System.Classes,
- Vcl.Graphics,
- Vcl.Controls,
- Vcl.Forms,
- Vcl.Dialogs,
- Vcl.StdCtrls;
- type
- TForm2 = class(TForm)
- Button1: TButton;
- procedure Button1Click(Sender: TObject);
- private
- { Private declarations }
- public
- { Public declarations }
- end;
- type
- TEntityDetails = packed record
- organizationType: string;
- numberOfOwners: Integer;
- dateOfFoundation: TDateTime;
- end;
- TNaturalDetails = packed record
- lastName: string;
- firstName: string;
- middleName: string;
- dateOfBirth: TDateTime;
- gender: string;
- maritalStatus: string;
- numberOfFamilyMembers: Integer;
- end;
- TAddressDetail = packed record
- value: string;
- end;
- TAddressArea = TArray<TAddressDetail>;
- TData = packed record
- customerNumber: string;
- &type: string;
- name: string;
- entityDetails: TEntityDetails;
- naturalDetails: TNaturalDetails;
- idDocument: string;
- address: string;
- addressArea: TAddressArea;
- end;
- TDatas = TArray<TData>;
- var
- Form2: TForm2;
- implementation
- {$R *.dfm}
- uses
- SynCommons;
- const
- JsonToDeserialize = '[{"customerNumber":"string","type":"string","name":"string","entityDetails":{"organizationType":"string","numberOfOwners":0,"dateOfFoundation":"2019-11-06T17:10:00"},' +
- '"naturalDetails":{"lastName":"string","firstName":"string","middleName":"string","dateOfBirth":"2000-01-01","gender":"string","maritalStatus":"string","numberOfFamilyMembers":0},' +
- '"idDocument":"string","address":"string","addressArea":[{"value":"string"}]}]';
- procedure TForm2.Button1Click(Sender: TObject);
- var
- MyRec: TDatas;
- LJson: RawUTF8;
- begin
- LJson := JsonToDeserialize;
- if SynCommons.DynArrayLoadJSON(MyRec, Pointer(LJson), TypeInfo(TDatas)) = nil then
- ShowMessage('Json de-serialization failed')
- else
- ShowMessage('Json successfully transfered in record');
- end;
- end.
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement