lua:tisk_pomoci_lua
Rozdíly
Zde můžete vidět rozdíly mezi vybranou verzí a aktuální verzí dané stránky.
Obě strany předchozí revizePředchozí verzeNásledující verze | Předchozí verzePoslední revizeObě strany příští revize | ||
lua:tisk_pomoci_lua [2022/07/13 11:17] – [Ukázka tisku vizuálního:] Libor Kadaník | lua:tisk_pomoci_lua [2023/05/25 11:22] – [Ukázka tisku vizuálního:] Karel Petrů | ||
---|---|---|---|
Řádek 1: | Řádek 1: | ||
==== Doplnění LUA reportů o správné ukládání při SaveDocument ==== | ==== Doplnění LUA reportů o správné ukládání při SaveDocument ==== | ||
- | |||
- | * Name - jméno reportu, je použito v názvu souboru: [ID-]Name-IDDokument.ext | ||
- | * v reports.xml doplnit volaní LUA funkce o parametr Name (..., Use, Name) | ||
- | * volanou Lua funkci doplnit o parametr Name | ||
- | * ve volání Print doplnit třetí parametr hash: {document_name=Name} | ||
* MiddleName je použit jako podadresář v reports (report/ | * MiddleName je použit jako podadresář v reports (report/ | ||
Řádek 11: | Řádek 6: | ||
* pokud se tiskne z Query a chceme dokument ukládat k danému rozpočtu, musí byt v prvním Query field // | * pokud se tiskne z Query a chceme dokument ukládat k danému rozpočtu, musí byt v prvním Query field // | ||
- | |||
- | === Pokud potřebuji ID a tiskne se z SQL je první field v SQL (ID) === | ||
- | |||
- | Do typu reportu napsat: '' | ||
- | |||
- | Pro doplneni //TypDokl// a //Cisla dokladu// do dokumentu je potreba v SQL mit field //TypDokl// a mit nastaven primarni index nebo // | ||
- | |||
- | DSI z SQL musi být před tiskem otevřené !!! | ||
- | |||
- | <code lua> | ||
- | function v_zakazky_zakazky.reports.PracVykaz(DSI, | ||
- | local TiskMD=v_prost_vykony.ZakazkaVykazMiddle(DSI: | ||
- | if TiskMD then | ||
- | TiskMD: | ||
- | TiskMD: | ||
- | WindowsManager: | ||
- | TiskMD: | ||
- | end | ||
- | end | ||
- | |||
- | --ponovu | ||
- | return LuaForm.PrintReport(Data.TiskMD, | ||
- | {document_name=Data.Params.Name, | ||
- | AfterSaveLuaHookFunc=" | ||
- | |||
- | </ | ||
=== pokud je použit GotoNextPage=false, | === pokud je použit GotoNextPage=false, | ||
<code lua> | <code lua> | ||
+ | --pro specielni pripady ze je dialogu vybran konktretni partner nebo zakazka a dokument pak chci s nim spojit (napr. seznam faktur) | ||
if res.idpartner ~= "" | if res.idpartner ~= "" | ||
local MD=ClientSession: | local MD=ClientSession: | ||
Řádek 55: | Řádek 25: | ||
</ | </ | ||
- | === Pro tisk metodou CreatePrint-CreateReport-StartPrint === | ||
- | Pro doplneni //TypDokl// a //Cisla dokladu// do dokumentu je potreba ve **BeforeSaveToDocumentDir(DSI, | ||
- | Z DSI se bere //TypDokl// a // | ||
- | |||
- | <code lua> | ||
- | local prnt=WindowsManager: | ||
- | local report=prnt: | ||
- | local FileName | ||
- | local Options = {Report=ReportName, | ||
- | if Action==PRINT_DOCUMENT then | ||
- | if ID ~= "" | ||
- | FileName=dokumenty_dokumenty.BeforeSaveToDocumentDir(DSI, | ||
- | end | ||
- | prnt: | ||
- | | ||
- | ... | ||
- | |||
- | prnt: | ||
- | report: | ||
- | prnt:Free() | ||
- | if Action==PRINT_DOCUMENT then | ||
- | dokumenty_dokumenty.AfterSaveToDocumentDir(nil, | ||
- | end | ||
- | | ||
- | </ | ||
- | |||
- | |||
====Ukázka tisku vizuálního: | ====Ukázka tisku vizuálního: | ||
Řádek 95: | Řádek 38: | ||
====Ukázka nevizuálního tisku middle:==== | ====Ukázka nevizuálního tisku middle:==== | ||
- | Vytiskne do souboru "m:/tmp/out.sxc" řádky " | + | Vytiskne do souboru "/ |
Middle musí být otevřené a vybrané řádky musí být " | Middle musí být otevřené a vybrané řádky musí být " | ||
<code lua> | <code lua> | ||
- | ClientSession: | + | ClientSession: |
</ | </ | ||
====Ukázka tisku vizuálního: | ====Ukázka tisku vizuálního: | ||
- | -pokud potřebuji **ID** a tiskne se z **SQL** je **první field v SQL (ID)**. ID urcuje, zda je report seznam ID="" | + | -pokud potřebuji **ID** a tiskne se z **SQL** je potřeba nastavit |
-pro doplneni **TypDokl** a **Cisla dokladu** do dokumentu je potreba v SQL mit field TypDokl a mit nastaven **primarni index** nebo **DataModelName** (potreba pro BeforeSaveToDocumentDir)\\ | -pro doplneni **TypDokl** a **Cisla dokladu** do dokumentu je potreba v SQL mit field TypDokl a mit nastaven **primarni index** nebo **DataModelName** (potreba pro BeforeSaveToDocumentDir)\\ | ||
-**CDokladu** do dokumentu si to bere pres **DSI: | -**CDokladu** do dokumentu si to bere pres **DSI: | ||
- | -**DSI z SQL musi být před tiskem | + | -//< |
+ | -pokud neni DSI z SQL **otevřené** | ||
<code lua> | <code lua> | ||
Řádek 115: | Řádek 59: | ||
<Table Name=" | <Table Name=" | ||
< | < | ||
- | IDPrijemka-P | + | IDPRIJEMKA-P |
</ | </ | ||
</ | </ | ||
Řádek 150: | Řádek 94: | ||
function(Data) | function(Data) | ||
... | ... | ||
- | LuaForm.CallFunc(" | + | |
v_rozpocty_rozpocty.reports.TiskKapitol(Data.DSI, | v_rozpocty_rozpocty.reports.TiskKapitol(Data.DSI, | ||
end, "Tisk zakazek", | end, "Tisk zakazek", | ||
+ | end, | ||
+ | function(Data) | ||
... | ... | ||
if Data.FirstParams.Action==PRINT_DOCUMENT then | if Data.FirstParams.Action==PRINT_DOCUMENT then | ||
Řádek 158: | Řádek 104: | ||
end | end | ||
return LuaForm.EndPrintReport() | return LuaForm.EndPrintReport() | ||
- | ... | ||
end, | end, | ||
} | } |
lua/tisk_pomoci_lua.txt · Poslední úprava: 2023/05/25 11:34 autor: Karel Petrů