ZuloOne
English
Sign in
Menu

Print form

Updated

A print form is a MetaPrintForm (Name + Caption), a data script, and — for ZuloReport — LayoutJson. It prints a document or a dictionary record (or their lists).

Note

ZuloReport does not fill from one SlimTable. PrintAsync writes a catalog of cells (values that print once) and tables (rows that grow). The layout binds to those names. The engine paginates; the script does not print each line.

Files live next to the object they print: Documents/<Doc>/PrintForms/<Name>.printform.json or Dictionaries/<Dict>/PrintForms/, plus the script pair (scriptType: "PrintForm"). Without those files the form lives in the database only and is lost when the model is shipped.

Three engines: Zr (banded JSON, ZuloReportForm.PrintAsync), Html and Xlsx (PrintFormBase.GetDataTemplate / GetDataAsync). Zr is the only accepted engine value for the banded layout.

Where the Print button shows the form is MetaPrintFormBindings (TargetKind = DocumentType / DocumentSubtype / Dictionary, Scope = Record / List). Empty bindings = the form's own document type (list and card). A dictionary with no explicit binding is not shown.

The short recipe is Print a form. The long contract is Print forms.

A journal batch is browser HTML only. Server PDF, Xlsx, and a print-agent job each take one record. A Subreport prints a nested catalog table, not another print form. There is no import of a foreign binary layout.

See also#

Where next#

Was this page helpful?