Patch level : 10.0 1030

Files correlati     : tp0.exe tp0900a.msk
Ricompilazione Demo : [ ]
Commento            :
Corretta gestione tipi numerici in esportazione xls


git-svn-id: svn://10.65.10.50/branches/R_10_00@22285 c028cbd2-c16b-5b4b-a496-9718f37d4682
This commit is contained in:
guy 2011-06-20 10:41:18 +00:00
parent e89a3ec15a
commit d701b6c571
2 changed files with 52 additions and 78 deletions

View File

@ -4,8 +4,6 @@
#include <automask.h>
#include <modaut.h>
#include <progind.h>
#include <recarray.h>
#include <relation.h>
#include <reprint.h>
#include <reputils.h>
#include <textset.h>
@ -28,25 +26,13 @@ protected:
public:
TDichiarazione_CONAI_mask();
virtual ~TDichiarazione_CONAI_mask() {}
};
TDichiarazione_CONAI_mask::TDichiarazione_CONAI_mask() : TAutomask("tp0900a")
{
}
{}
bool TDichiarazione_CONAI_mask::on_field_event(TOperable_field& o, TField_event e, long jolly)
{
switch (o.dlg())
{
case F_FIRM:
if (e == fe_init || e == fe_modify)
o.check(RUNNING_CHECK);
break;
default:
break;
}
return true;
}
@ -76,27 +62,27 @@ public:
TDichiarazione_CONAI_csv_recordset::TDichiarazione_CONAI_csv_recordset()
: TCSV_recordset("CSV(,)\n")
{
//crea le colonne e ci mette l'intestazione! Nella prima versione sulla 3.2..
//crea le colonne e ci mette l'intestazione! Nella prima versione sulla 3.2..
//..invece inseriva a posteriori un record con le intestazioni poichè non..
//..esisteva la create column con il nome della column!
create_column("CODNUM");
create_column("ANNO");
create_column("NDOC");
create_column("DATADOC");
create_column("CODCLI");
create_column("ANNO", _intfld);
create_column("NDOC", _longfld);
create_column("DATADOC", _datefld);
create_column("CODCLI", _longfld);
create_column("COFICLI");
create_column("CODART");
create_column("NRIGA");
create_column("NRIGA", _intfld);
create_column("CLASSE");
create_column("SOTTOCL");
create_column("PREZZO");
create_column("PREZZO", _realfld);
create_column("UM");
create_column("CONAI A");
create_column("CONAI B");
create_column("CONAI BxC");
create_column("CONAI A+B");
create_column("INDETDOC");
create_column("INDETCLI");
create_column("CONAI A", _realfld);
create_column("CONAI B", _realfld);
create_column("CONAI BxC", _realfld);
create_column("CONAI A+B", _realfld);
create_column("INDETDOC", _realfld);
create_column("INDETCLI", _realfld);
}
@ -607,7 +593,7 @@ void TDichiarazione_CONAI::elabora(const TMask& mask) const
//quanti record validi ha trovato?
const long items = rdoc.items();
#ifdef DBG
warning_box("Hai trovato %ld righe di %s! Ti sembrano abbastanza?", items, row->get(0));
// warning_box("Hai trovato %ld righe di %s! Ti sembrano abbastanza?", items, row->get(0));
#endif
//E crea pure la progind..
@ -652,14 +638,14 @@ void TDichiarazione_CONAI::elabora(const TMask& mask) const
}
#ifdef DBG
csv->save_as_text("D:/dati/imin32/cazzone.txt");
csv->save_as_text("c:/temp/admin/cazzone.txt");
#endif
//se richiesto il file in formato excel...
if (mask.get_bool(F_EXCEL))
{
TFilename path = mask.get(F_PATH);
path.lower();
if (path.ends_with("xls") || path.ends_with("slk"))
if (path.ends_with(".xls") || path.ends_with(".slk"))
csv->save_as(path, fmt_html);
else
csv->save_as(path);
@ -680,26 +666,19 @@ void TDichiarazione_CONAI::elabora(const TMask& mask) const
{
//setta il recordset...
//deve settare almeno un campo manualmente perche' funzioni la mask2report
csv->set_var("#EMAIL", TVariant("Manca la email"), true);
csv->set_var("#EMAIL", TVariant(TR("Manca la email")), true);
rep.set_recordset(csv);
//..e poi carica i valori sulla maschera nel report!!!!
rep.mask2report(mask);
TReport_book book;
ok = book.add(rep);
if (ok)
book.print_or_preview();
rep.print_or_preview();
}
}
void TDichiarazione_CONAI::main_loop()
{
TDichiarazione_CONAI_mask mask;
while (mask.run() == K_ENTER)
{
elabora(mask);
}
}
bool TDichiarazione_CONAI::create()

View File

@ -16,39 +16,34 @@ ENDPAGE
PAGE "Dichiarazione CONAI" 0 2 0 0
GROUPBOX DLG_NULL 78 3
BEGIN
PROMPT 1 0 "@bDitta"
END
NUMBER F_FIRM 5
BEGIN
PROMPT 2 1 ""
PROMPT 1 80 "Ditta "
FLAGS "DFG"
USE LF_NDITTE
JOIN LF_ANAG TO LF_NDITTE KEY 1 INTO TIPOA=TIPOA CODANAGR=CODANAGR
INPUT CODDITTA F_FIRM
OUTPUT F_RAGSOC RAGSOC
OUTPUT F_PAIV LF_ANAG->PAIV
OUTPUT F_COFI LF_ANAG->COFI
FLAGS "DFG"
CHECKTYPE FORCED
CHECKTYPE REQUIRED
END
STRING F_RAGSOC 60
STRING F_RAGSOC 50
BEGIN
PROMPT 17 1 ""
FLAGS "D"
PROMPT 21 80 ""
FIELD #RAGSOC
FLAGS "D"
END
#define F_RAGSOC 202
GROUPBOX DLG_NULL 78 3
BEGIN
PROMPT 1 3 "@bPeriodo da considerare"
PROMPT 1 0 "@bPeriodo da considerare"
END
RADIOBUTTON F_PERIODO 39
BEGIN
PROMPT 2 3 ""
PROMPT 2 0 ""
ITEM "1|Annuale" MESSAGE HIDE,F_TRIMESTRE|HIDE,F_MESE
ITEM "2|Trimestrale" MESSAGE SHOW,F_TRIMESTRE|HIDE,F_MESE
ITEM "3|Mensile" MESSAGE HIDE,F_TRIMESTRE|SHOW,F_MESE
@ -58,7 +53,7 @@ END
NUMBER F_ANNO 4
BEGIN
PROMPT 40 4 "Anno "
PROMPT 40 1 "Anno "
HELP "Anno per cui effettuare la dichiarazione"
CHECKTYPE REQUIRED
FIELD #ANNO
@ -66,7 +61,7 @@ END
LIST F_MESE 15
BEGIN
PROMPT 52 4 "Periodo "
PROMPT 52 1 "Periodo "
HELP "Mese per cui effettuare la dichiarazione"
FLAGS "AM"
FIELD #MESE
@ -74,7 +69,7 @@ END
LIST F_TRIMESTRE 15
BEGIN
PROMPT 52 4 "Periodo "
PROMPT 52 1 "Periodo "
HELP "Trimestre di cui effettuare la dichiarazione"
ITEM "3|1 Trimestre "
ITEM "6|2 Trimestre "
@ -85,13 +80,13 @@ END
TEXT DLG_NULL
BEGIN
PROMPT 1 6 "@bNumerazioni e tipi documento da considerare"
PROMPT 1 3 "@bNumerazioni e tipi documento da considerare"
END
SPREADSHEET F_TIPI 78 4
SPREADSHEET F_TIPI 78 6
BEGIN
PROMPT 1 7 ""
ITEM "Numerazione"
PROMPT 1 4 ""
ITEM "Num."
ITEM "Descrizione@50"
ITEM "Tipo"
ITEM "Descrizione@50"
@ -99,7 +94,7 @@ END
LIST F_SPECIECONAI 12
BEGIN
PROMPT 1 12 "@bSpecie CONAI da considerare "
PROMPT 1 11 "@bSpecie CONAI da considerare "
ITEM "0|Acciaio "
ITEM "1|Alluminio "
ITEM "2|Carta "
@ -112,7 +107,7 @@ END
LIST F_TIPOSTAMPA 19
BEGIN
PROMPT 46 12 "@bTipo stampa "
PROMPT 46 11 "@bTipo stampa "
ITEM "1|Modello 6.1"
ITEM "2|Allegato Mod. 6.1"
ITEM "3|Modello 6.3"
@ -121,70 +116,70 @@ END
GROUPBOX DLG_NULL 78 6
BEGIN
PROMPT 1 14 "@bDati Dichiarante"
PROMPT 1 13 "@bDati Dichiarante"
END
STRING F_SOCIO 30 6
BEGIN
PROMPT 2 15 "Cod.Socio "
PROMPT 2 14 "Cod.Socio "
FIELD #SOCIO
END
STRING F_RESP 18 12
BEGIN
PROMPT 20 15 "Responsabile "
PROMPT 20 14 "Responsabile "
FIELD #RESP
END
STRING F_PAIV 16
BEGIN
PROMPT 2 16 "IVA "
PROMPT 2 15 "IVA "
FIELD #PAIV
END
STRING F_COFI 16
BEGIN
PROMPT 25 16 "C.F."
PROMPT 25 15 "C.F."
FIELD #COFI
END
STRING F_INDIR 60 33
BEGIN
PROMPT 2 17 "Indirizzo "
PROMPT 2 16 "Indirizzo "
FIELD #INDIR
END
RADIOBUTTON F_PRODUT 27
BEGIN
PROMPT 51 15 "Iscritto in quanto:"
PROMPT 51 14 "Iscritto in quanto:"
ITEM "1|Produttore"
ITEM "2|Utilizzatore"
FLAGS "Z"
FIELD #PRODUT
END
STRING F_EMAIL 256 30
STRING F_EMAIL 256 33
BEGIN
PROMPT 2 18 "E-Mail "
PROMPT 2 17 "E-Mail "
FIELD EMAIL
END
STRING F_TEL 26
BEGIN
PROMPT 46 18 "Tel. "
PROMPT 46 17 "Tel. "
FIELD TEL
END
BOOLEAN F_EXCEL
BEGIN
PROMPT 2 20 "Genera file in formato Excel (.xls)"
PROMPT 2 19 "Esportazione in Excel "
MESSAGE FALSE DISABLE,F_PATH
MESSAGE TRUE ENABLE,F_PATH
END
STRING F_PATH 256 42
STRING F_PATH 256 50
BEGIN
PROMPT 35 20 ""
PROMPT 27 19 ""
END
STRING DLG_PROFILE 50