git-svn-id: svn://10.65.10.50/branches/R_10_00@23191 c028cbd2-c16b-5b4b-a496-9718f37d4682

This commit is contained in:
guy 2016-04-15 08:17:44 +00:00
parent db4a70fcd3
commit 3c7e9a5c69
19 changed files with 1436 additions and 1273 deletions

View File

@ -1,30 +1,26 @@
<?xml version="1.0" encoding="UTF-8" ?>
<report libraries="ve1300" name="lv0200b" lpi="6">
<report libraries="ve1300" name="lv0200b" orientation="1" lpi="6">
<description>Stampa valore convenzionale per articolo</description>
<font face="Courier New" size="10" />
<section type="Head" height="6" pattern="1">
<field type="Stringa" width="60" pattern="1">
<source>#SYSTEM.RAGSOC</source>
</field>
<field x="66.5" type="Testo" width="5" height="1.5" pattern="1" text="Pag." />
<field x="71.5" type="Stringa" width="10" pattern="1">
<field x="80" type="Testo" width="5" height="1.5" pattern="1" text="Pag." />
<field x="85" type="Stringa" width="10" pattern="1">
<prescript>MESSAGE _PAGENO</prescript>
</field>
<field y="1" type="Stringa" align="center" width="81.5" height="2" pattern="1">
<field y="1.5" type="Testo" align="center" width="95" height="1.5" pattern="1" text="Stampa valore convenzionale per articolo">
<font face="Courier New" bold="1" size="14" />
<prescript description="H0.0 PRESCRIPT">"Stampa riepilogo consegne del "
"#DATA" @
+
#THIS !</prescript>
</field>
<field x="0.5" y="3.75" type="Testo" width="20" pattern="1" text="Codice">
<source>RDOC.CODART</source>
</field>
<field x="21" y="3.75" type="Testo" width="50" pattern="1" text="Descrizione articolo">
<field x="22" y="3.75" type="Testo" width="50" pattern="1" text="Descrizione articolo">
<source>ANAMAG.DESCR</source>
</field>
<field border="2" y="4.75" type="Linea" width="81.5" height="0" pattern="1" />
<field x="62.5" y="3.75" type="Testo" align="right" width="18" id="101" pattern="1" text="Val.convenzionale">
<field border="2" y="4.75" type="Linea" width="95" height="0" pattern="1" />
<field x="63.5" y="3.75" type="Testo" align="right" width="18" id="101" pattern="1" text="Val.convenzionale">
<source>RDOC.QTA</source>
</field>
</section>
@ -36,15 +32,15 @@
<section type="Body" pattern="1" />
<section type="Body" level="1" pattern="1">
<condition>VALCONV</condition>
<field x="70" type="Prezzo" align="right" width="10" id="102" pattern="1" text="#########,@@">
<field x="73" type="Prezzo" align="right" width="10" id="102" pattern="1" text="#########,@@">
<source>201@-&#3E;R0</source>
<postscript description="B1.102 POSTSCRIPT">MESSAGE ADD,F2.102
</postscript>
</field>
<field type="Stringa" width="20" id="201" pattern="1">
<source>RDOC.CODART</source>
<field x="1" type="Stringa" link="47.CODART" width="20" id="201" pattern="1">
<source>CODART</source>
</field>
<field x="21" type="Stringa" dynamic_height="1" width="40" height="2" id="202" pattern="1">
<field x="22" type="Stringa" width="50" id="202" pattern="1">
<source>ANAMAG.DESCR</source>
</field>
</section>
@ -52,8 +48,8 @@
<section type="Foot" level="1" pattern="1">
<field border="2" y="1" type="Linea" width="95" height="0" pattern="1" />
</section>
<sql>USE ANAMAG
JOIN &#26;LV047 INTO CODTAB==CODART ALIAS 201
<sql>USE ANAMAG SELECT (STR(201@-&#3E;R0!=0)||(#ALL="X"))
JOIN &#26;LV047 ALIAS 201 INTO CODTAB==CODART
FROM CODART=#DACODART
TO CODART=#ACODART
</sql>

View File

@ -61,6 +61,12 @@ BEGIN
CHECKTYPE SEARCH
END
BOOLEAN 400
BEGIN
PROMPT 2 8 "Stampa tutti gli articoli"
FIELD ALL
END
ENDPAGE
ENDMASK

View File

@ -1,21 +1,17 @@
<?xml version="1.0" encoding="UTF-8" ?>
<report libraries="ve1300" name="lv0200c" lpi="6" command="lv0 -1">
<report libraries="ve1300" name="lv0200c" orientation="1" lpi="6" command="lv0 -1">
<description>Stampa valore convenzionale per articolo</description>
<font face="Courier New" size="10" />
<section type="Head" height="6" pattern="1">
<field type="Stringa" width="60" pattern="1">
<source>#SYSTEM.RAGSOC</source>
</field>
<field x="66.5" type="Testo" width="5" height="1.5" pattern="1" text="Pag." />
<field x="71.5" type="Stringa" width="10" pattern="1">
<field x="82" type="Testo" width="5" height="1.5" pattern="1" text="Pag." />
<field x="87" type="Stringa" width="10" pattern="1">
<prescript>MESSAGE _PAGENO</prescript>
</field>
<field y="1" type="Stringa" align="center" width="81.5" height="2" pattern="1">
<field y="1" type="Stringa" align="center" width="95" height="2" pattern="1" text="Stampa Valore dotazione odierna per articolo">
<font face="Courier New" bold="1" size="14" />
<prescript description="H0.0 PRESCRIPT">"Stampa riepilogo consegne del "
"#DATA" @
+
#THIS !</prescript>
</field>
<field x="0.5" y="3.75" type="Testo" width="20" pattern="1" text="Codice">
<source>RDOC.CODART</source>
@ -23,54 +19,99 @@
<field x="21" y="3.75" type="Testo" width="30" pattern="1" text="Descrizione articolo">
<source>ANAMAG.DESCR</source>
</field>
<field border="2" y="4.75" type="Linea" width="82" height="0" pattern="1" />
<field x="49" y="3.75" type="Testo" align="right" width="10" id="101" pattern="1" text="Dotaz. Od.">
<field border="2" y="4.75" type="Linea" width="95" height="0" pattern="1" />
<field x="61" y="3.75" type="Testo" align="right" width="12" id="101" pattern="1" text="Dotaz. Od.">
<source>RDOC.QTA</source>
</field>
<field x="60" y="3.75" type="Testo" align="right" width="8" id="101" pattern="1" text="Prezzo">
<field x="74" y="3.75" type="Testo" align="right" width="9" id="101" pattern="1" text="Val.Conv.">
<source>RDOC.QTA</source>
</field>
<field x="69.5" y="3.75" type="Testo" align="right" width="12" id="101" pattern="1" text="Valore">
<field x="84" y="3.75" type="Testo" align="right" width="11" id="101" pattern="1" text="Totale">
<source>RDOC.QTA</source>
</field>
</section>
<section type="Head" level="1" pattern="1">
<prescript description="H1 PRESCRIPT">0 #F1.101 !
0 #F1.102 !
0 #F1.103 !</prescript>
<prescript description="H1 PRESCRIPT">MESSAGE RESET,F1</prescript>
</section>
<section type="Head" level="2" hidden="1" pattern="1">
<groupby>CODART</groupby>
<prescript description="H2 PRESCRIPT">MESSAGE RESET,F2</prescript>
<field type="Stringa" width="15" id="201" pattern="1">
<source>CODART</source>
</field>
<field x="16" type="Stringa" width="45" id="202" pattern="1">
<source>ANAMAG.DESCR</source>
</field>
<field x="74" type="Numero" align="right" width="10" id="203" pattern="1" text="###.###.###,@@">
<source>201@.R0</source>
</field>
</section>
<section type="Body" pattern="1" />
<section type="Body" level="1" pattern="1">
<field x="52" type="Numero" align="right" width="7" id="100" pattern="1" text="###.###">
<source>#ART.DOTOD</source>
<field type="Stringa" hidden="1" width="1" pattern="1">
<source>#DETT</source>
<prescript description="B1.0 PRESCRIPT">MESSAGE EMPTY HIDE,B1
MESSAGE SHOW,B1</prescript>
</field>
<field x="59" type="Prezzo" align="right" width="10" id="101" pattern="1" text="###.###.###,@@">
<source>UMART.PREZZO</source>
<field x="12" type="Stringa" width="40" pattern="1">
<prescript description="B1.0 PRESCRIPT">MESSAGE ISAMREAD,20,TIPOCF=#10!CODCF=#20,RAGSOC</prescript>
</field>
<field x="69" type="Valuta" align="right" width="12" id="102" pattern="1" text="###.###.###,@@">
<field x="1" type="Stringa" width="1" id="10" pattern="1">
<source>CLIFOGIAC.TIPOCF</source>
</field>
<field x="3" type="Numero" align="right" width="8.5" id="20" pattern="1">
<source>CLIFOGIAC.CODCF</source>
</field>
<field x="61" type="Numero" align="right" width="12" id="100" pattern="1" text="###.###">
<source>CLIFOGIAC.DOTOD</source>
<prescript description="B1.100 PRESCRIPT">MESSAGE ADD,F2.100</prescript>
</field>
<field x="74" type="Numero" align="right" width="9" id="101" pattern="1" text="###.###.###,@@">
<source>201@.R0</source>
</field>
<field x="84" type="Valuta" align="right" width="11" id="102" pattern="1" text="###.###.###,@@">
<source>#100*#101</source>
<postscript description="B1.102 POSTSCRIPT">MESSAGE ADD,F1.102
</postscript>
</field>
<field type="Stringa" width="20" id="201" pattern="1">
<source>CODART</source>
</field>
<field x="21" type="Stringa" dynamic_height="1" width="30" height="2" id="202" pattern="1">
<source>ANAMAG.DESCR</source>
<prescript description="B1.102 PRESCRIPT">MESSAGE ADD,F2.102</prescript>
</field>
</section>
<section type="Foot" height="2" pattern="1" />
<section type="Foot" level="1" pattern="1">
<field border="2" y="1" type="Linea" width="81" height="0" pattern="1" />
<field border="2" y="1" type="Linea" width="95" height="0" pattern="1" />
<field y="2.25" type="Testo" width="10" pattern="1" text="Totale" />
<field x="67" y="2" type="Valuta" align="right" width="14" id="102" pattern="1" text="###.###.###,@@">
<field x="58" y="2" type="Numero" align="right" width="15" id="100" pattern="1" text="###.###.###">
<postscript description="F1.100 POSTSCRIPT">MESSAGE ADD,F1.102
</postscript>
</field>
<field x="81" y="2" type="Valuta" align="right" width="14" id="102" pattern="1" text="###.###.###,@@">
<postscript description="F1.102 POSTSCRIPT">MESSAGE ADD,F1.102
</postscript>
</field>
</section>
<sql>USE ANAMAG
JOIN UMART INTO CODART==CODART NRIGA==1
FROM CODART=#DACODART
TO CODART=#ACODART
<section type="Foot" level="2" pattern="1">
<field x="61" type="Numero" align="right" width="12" id="100" pattern="1" text="###.###">
<font face="Courier New" bold="1" size="10" />
<postscript description="F2.100 POSTSCRIPT">MESSAGE ADD,F1.100</postscript>
</field>
<field x="74" type="Numero" align="right" width="9" id="101" pattern="1" text="###.###.###,@@">
<source>#H2.203</source>
</field>
<field x="84" type="Valuta" align="right" width="11" id="102" pattern="1" text="###.###.###,@@">
<postscript description="F2.102 POSTSCRIPT">MESSAGE ADD,F1.102
</postscript>
</field>
<field x="1" type="Stringa" link="47.CODART" width="15" id="201" pattern="1">
<source>#H2.201</source>
</field>
<field x="16" type="Stringa" width="45" id="202" pattern="1">
<source>#H2.202</source>
</field>
</section>
<sql>USE CLIFOGIAC KEY 3 SELECT STR(DOTOD!=0)&#26;&#26;STR(CODCF!=0)&#26;&#26;(ANAMAG.DESCR!="")&#26;&#26;(CLIFO.RAGSOC!="")
JOIN ANAMAG INTO CODART==CODART
JOIN &#26;LV047 ALIAS 201 INTO CODTAB==CODART
JOIN CLIFO INTO TIPOCF==TIPOCF CODCF==CODCF
FROM ANNOES=#ANNO CODART=#DACODART
TO ANNOES=#ANNO CODART=#ACODART
</sql>
</report>

View File

@ -61,6 +61,12 @@ BEGIN
CHECKTYPE SEARCH
END
BOOLEAN 400
BEGIN
PROMPT 2 9 "Stampa dettaglio clienti"
FIELD DETT
END
ENDPAGE
ENDMASK

View File

@ -1,8 +1,9 @@
#include <applicat.h>
#include <automask.h>
#include <config.h>
#include <execp.h>
#include <relation.h>
#include <reprint.h>
#include <sheet.h>
#include "lv1100a.h"
#include "../ve/velib.h"

View File

@ -1,5 +1,6 @@
#include <applicat.h>
#include <automask.h>
#include <config.h>
#include <execp.h>
#include <relation.h>
#include <reprint.h>

View File

@ -1,6 +1,8 @@
#include <applicat.h>
#include <automask.h>
#include <config.h>
#include <execp.h>
#include <sheet.h>
#include "lvlib.h"

View File

@ -1,4 +1,5 @@
#include <applicat.h>
#include <config.h>
#include <automask.h>
#include <progind.h>

View File

@ -1,4 +1,5 @@
#include <applicat.h>
#include <config.h>
#include <automask.h>
#include <defmask.h>
#include <progind.h>

View File

@ -1,5 +1,6 @@
#include <applicat.h>
#include <automask.h>
#include <config.h>
#include <execp.h>
#include <progind.h>
#include <reputils.h>
@ -28,7 +29,7 @@ class TGenera_documenti_msk : public TAutomask
{
public:
virtual bool on_field_event(TOperable_field& o, TField_event e, long jolly);
TGenera_documenti_msk (const char* name) : TAutomask(name) {set(F_STAMPA, 'X');}
TGenera_documenti_msk (const char* name) : TAutomask(name) {}
};
//ON_FIELD_EVENT: questo metodo gestisce i vari eventi che si verificano sui campi della maschera
@ -64,6 +65,7 @@ class TGenera_documenti_app : public TSkeleton_application
TConfig* _configlv;
char _buono;
long _ndoc;
bool _has_gui;
private:
//Metodi per la generazione dei documenti
@ -338,7 +340,8 @@ bool TGenera_documenti_app::crea_documento_ritiro(const TISAM_recordset& ritiro,
const long old_ndoc = doc.get_long(DOC_NDOC);
doc.renum_ndoc();
const long new_ndoc = doc.get_long(DOC_NDOC);
message_box("Attenzione documento numero %ld rinumerato in %ld", old_ndoc, new_ndoc);
if (_has_gui)
lv_popup_msg("Attenzione documento numero %ld rinumerato in %ld", old_ndoc, new_ndoc);
}
++numdocgen;
}
@ -1287,27 +1290,29 @@ bool TGenera_documenti_app::transfer()
}
}
if (documenti.items() == 0)
warning_box(TR("Non è stato possibile generare alcun documento:\nprobabilmente i documenti richiesti esistono già."));
else
if (_has_gui)
{
if (adata < TDate(TODAY) && _msk->get_int(F_TPGEN) == 0)
warning_box(TR("Non è stato possibile generare documenti con data prevista consegna nel passato"));
if (documenti.items() == 0)
lv_popup_msg(TR("Non è stato possibile generare alcun documento:\nprobabilmente i documenti richiesti esistono già."));
else
{
TReport_book buc;
buc.add(rep);
if (buc.pages() > 0)
buc.preview();
if (adata < TDate(TODAY) && _msk->get_int(F_TPGEN) == 0)
lv_popup_msg(TR("Non è stato possibile generare documenti con data prevista consegna nel passato"));
else
{
TString str;
if (numdocgen > 1)
str << TR("Sono stati generati ") << numdocgen << TR(" buoni.");
TReport_book buc;
buc.add(rep);
if (buc.pages() > 0)
buc.preview();
else
str << TR("E' stato generato ") << numdocgen << TR(" buono.");
message_box(str);
message_box(TR("Generazione terminata"));
{
TString str;
if (numdocgen > 1)
str << TR("Sono stati generati ") << numdocgen << TR(" buoni.");
else
str << TR("E' stato generato un buono.");
lv_popup_msg(str);
}
}
}
}
@ -1317,11 +1322,23 @@ bool TGenera_documenti_app::transfer()
void TGenera_documenti_app::main_loop()
{
_msk->set(F_NOTPLAN, "X");
while (_msk->run() == K_ENTER)
{
transfer();
_msk->set(F_NOTPLAN, "X");
_has_gui = !(argc() >= 4 && xvt_str_same(argv(3), "-A"));
_msk->set(F_STAMPA, true);
_msk->set(F_NOTPLAN, true);
if (_has_gui)
{
while (_msk->run() == K_ENTER)
{
transfer();
_msk->set(F_NOTPLAN, true);
}
}
else
{
_msk->set(F_DTCONS, TDate(TODAY));
_msk->send_key(K_SPACE, DLG_OK);
if (_msk->run() == K_ENTER)
transfer();
}
}

View File

@ -132,7 +132,7 @@ END
DATE F_DTDOC
BEGIN
PROMPT 30 11 "Data documento "
PROMPT 30 11 "Data documento "
FLAGS "A"
CHECKTYPE REQUIRED
END

File diff suppressed because it is too large Load Diff

View File

@ -48,9 +48,9 @@ BEGIN
FLAGS "D"
END
SPREADSHEET F_SHEET_NAME 78 10
SPREADSHEET F_SHEET_NAME 78 -1
BEGIN
PROMPT 1 9 "Nomi"
PROMPT 1 10 "Nomi"
ITEM "Nome file"
END
@ -64,7 +64,7 @@ BEGIN
PROMPT 1 1 "@bNome file"
END
STRING F_S_NAME 255 66
STRING F_S_NAME 260 66
BEGIN
PROMPT 3 2 "File "
FLAGS "D"
@ -98,4 +98,4 @@ BEGIN
END
ENDPAGE
ENDMASK
ENDMASK

View File

@ -1,5 +1,6 @@
#include <applicat.h>
#include <automask.h>
#include <config.h>
#include <defmask.h>
#include <execp.h>
#include <reprint.h>

View File

@ -1,7 +1,9 @@
#include <applicat.h>
#include <automask.h>
#include <config.h>
#include <execp.h>
#include <progind.h>
#include <sheet.h>
#include <utility.h>
#include "../cg/cglib01.h"

View File

@ -1,9 +1,11 @@
#include <applicat.h>
#include <automask.h>
#include <config.h>
#include <execp.h>
#include <progind.h>
#include <relation.h>
#include <reputils.h>
#include <sheet.h>
#include <utility.h>
#include "../cg/cglib01.h"

View File

@ -2,6 +2,7 @@
#include <automask.h>
#include <progind.h>
#include <reputils.h>
#include <sheet.h>
#include <utility.h>
#include "../ce/ammce.h"
@ -85,8 +86,7 @@ bool TImporta_cesp_mask::on_field_event(TOperable_field& f, TField_event e, long
case F_NAME:
if (e == fe_button)
{
TArray_sheet as(-1, -1, 72, 20, TR("Selezione file"),
"File@32");
TArray_sheet as(-1, -1, 72, 20, TR("Selezione file"), "File@32");
TFilename path = get(F_PATH);
path.add("*.txt"); //files delle testate
list_files(path, as.rows_array());

View File

@ -117,6 +117,20 @@ long lv_find_contract(const long codcf, const long indsped, const TDate& data)
return cod;
}
bool lv_popup_msg(const char* fmt, ...)
{
char buff[256] = { 0 };
va_list arg;
va_start(arg, fmt);
vsprintf_s(buff, sizeof(buff), fmt, arg);
va_end(arg);
if (strchr(buff, '!'))
xvt_dm_popup_warning(buff);
else
xvt_dm_popup_message(buff);
return false;
}
///////////////////////////////////////////////////////////
// TCache_articoli_lavanderie
///////////////////////////////////////////////////////////

View File

@ -402,4 +402,7 @@ public:
TDoc_inventario(TDoc_inventario& dinv): TDocumento(dinv){};
};
// Finestra di notifica per messaggi non troppo critici, tipice nelle elaborazioni batch
bool lv_popup_msg(const char* fmt, ...);
#endif