Nuova rilevazione ore
git-svn-id: svn://10.65.10.50/branches/R_10_00@22882 c028cbd2-c16b-5b4b-a496-9718f37d4682
This commit is contained in:
parent
fae432278f
commit
1b64d55829
@ -8,10 +8,11 @@ int main(int argc, char** argv)
|
|||||||
{
|
{
|
||||||
case 0 : ci0100(argc,argv); break; // gestione tabelle cont. ind.
|
case 0 : ci0100(argc,argv); break; // gestione tabelle cont. ind.
|
||||||
case 1 : ci0200(argc,argv); break; // gestione risorse / attrezzature
|
case 1 : ci0200(argc,argv); break; // gestione risorse / attrezzature
|
||||||
case 2 : ci0300(argc,argv); break; // parametri configurazione Contabilita' Industriale
|
case 2 : ci0300(argc,argv); break; // parametri configurazione Contabilità Industriale
|
||||||
case 3 : ci0400(argc,argv); break; // immssione documenti
|
case 3 : ci0400(argc,argv); break; // immssione documenti
|
||||||
case 4 : ci0500(argc,argv); break; // gestione disponibilità risorse / attrezzature
|
case 4 : ci0500(argc,argv); break; // gestione disponibilità risorse / attrezzature
|
||||||
case 5 : ci0600(argc,argv); break; // gestione default risorse / attrezzature
|
case 5 : ci0600(argc,argv); break; // gestione default risorse / attrezzature
|
||||||
|
case 6 : ci0700(argc,argv); break; // creazione do
|
||||||
default: ci0100(argc,argv); break; // gestione tabelle cont. ind.
|
default: ci0100(argc,argv); break; // gestione tabelle cont. ind.
|
||||||
}
|
}
|
||||||
return 0;
|
return 0;
|
||||||
|
1
ci/ci0.h
1
ci/ci0.h
@ -7,5 +7,6 @@ int ci0300(int argc, char* argv[]); // parametri configurazione Contabilita' Ind
|
|||||||
int ci0400(int argc, char* argv[]); // immssione documenti
|
int ci0400(int argc, char* argv[]); // immssione documenti
|
||||||
int ci0500(int argc, char* argv[]); // gestione disponibilità risorse / attrezzature
|
int ci0500(int argc, char* argv[]); // gestione disponibilità risorse / attrezzature
|
||||||
int ci0600(int argc, char* argv[]); // gestione default risorse / attrezzature
|
int ci0600(int argc, char* argv[]); // gestione default risorse / attrezzature
|
||||||
|
int ci0700(int argc, char* argv[]); // generazione documenti da movana.ini
|
||||||
|
|
||||||
#endif // __CI0_H
|
#endif // __CI0_H
|
||||||
|
@ -88,7 +88,7 @@ void TRisoatt_msk::riempi_sheet()
|
|||||||
{
|
{
|
||||||
TSheet_field& sheet = sfield(F_SHEET);
|
TSheet_field& sheet = sfield(F_SHEET);
|
||||||
|
|
||||||
if (sheet.items() > 0 && sheet.dirty() && yesno_box("Vuoi salvare le modifiche"))
|
if (sheet.items() > 0 && sheet.dirty() && yesno_box("Salvare le modifiche"))
|
||||||
registra();
|
registra();
|
||||||
|
|
||||||
TString filtro;
|
TString filtro;
|
||||||
@ -106,17 +106,32 @@ void TRisoatt_msk::riempi_sheet()
|
|||||||
default: break;
|
default: break;
|
||||||
}
|
}
|
||||||
filtro << add_field_to_tab_filter(F_ANNO);
|
filtro << add_field_to_tab_filter(F_ANNO);
|
||||||
filtro << add_field_to_tab_filter(F_MESE, 2) << "01";
|
filtro << add_field_to_tab_filter(F_MESE, 2) << "??";
|
||||||
filtro << add_field_to_tab_filter(F_TPORA);
|
filtro << add_field_to_tab_filter(F_TPORA);
|
||||||
|
|
||||||
TString query("USE &ROA\n");
|
if (filtro.ends_with("?"))
|
||||||
|
|
||||||
if (filtro.full())
|
|
||||||
query << "SELECT CODTAB?=\"" << filtro << "\"";
|
|
||||||
if(risoatt != 'T')
|
|
||||||
{
|
{
|
||||||
query << "\nFROM CODTAB=" << risoatt
|
int i = 0;
|
||||||
<< "\nTO CODTAB=" << risoatt;
|
for (i = filtro.len()-1; i >= 0 && filtro[i] == '?'; i--);
|
||||||
|
if (i >= 0)
|
||||||
|
{
|
||||||
|
filtro.overwrite("*", i+1);
|
||||||
|
filtro.cut(i+2);
|
||||||
|
}
|
||||||
|
else
|
||||||
|
filtro.cut(0);
|
||||||
|
}
|
||||||
|
|
||||||
|
TString query;
|
||||||
|
query << "USE &ROA";
|
||||||
|
if (filtro.full())
|
||||||
|
{
|
||||||
|
query << "\nSELECT CODTAB?=\"" << filtro << "\"";
|
||||||
|
if (risoatt != 'T' && filtro[0] != '?')
|
||||||
|
{
|
||||||
|
query << "\nFROM CODTAB=" << filtro.left(5)
|
||||||
|
<< "\nTO CODTAB=" << filtro.left(5);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
TISAM_recordset roa(query);
|
TISAM_recordset roa(query);
|
||||||
@ -126,7 +141,7 @@ void TRisoatt_msk::riempi_sheet()
|
|||||||
//riempio lo sheet con i dati che soddisfano il filtro preparato prima
|
//riempio lo sheet con i dati che soddisfano il filtro preparato prima
|
||||||
for(bool ok = roa.move_first(); ok; ok = roa.move_next())
|
for(bool ok = roa.move_first(); ok; ok = roa.move_next())
|
||||||
{
|
{
|
||||||
TRisoatt roa(roa.cursor()->curr());
|
const TRisoatt& roa(roa.cursor()->curr());
|
||||||
TRisoatt_key roakey(roa.chiave());
|
TRisoatt_key roakey(roa.chiave());
|
||||||
TToken_string& riga = sheet.row(-1);
|
TToken_string& riga = sheet.row(-1);
|
||||||
riga.add(roakey.tipo(), sheet.cid2index(S_RISOATT));
|
riga.add(roakey.tipo(), sheet.cid2index(S_RISOATT));
|
||||||
@ -174,7 +189,7 @@ void TRisoatt_msk::nuova_riga()
|
|||||||
const TString4 tipo = tutti ? "R" : get(F_RISOATT);
|
const TString4 tipo = tutti ? "R" : get(F_RISOATT);
|
||||||
int mese = get_int(F_MESE);
|
int mese = get_int(F_MESE);
|
||||||
int anno = get_int(F_ANNO);
|
int anno = get_int(F_ANNO);
|
||||||
TString tpora = get(F_TPORA);
|
const TString& tpora = get(F_TPORA);
|
||||||
|
|
||||||
riga.add(tipo, sheet.cid2index(S_RISOATT));
|
riga.add(tipo, sheet.cid2index(S_RISOATT));
|
||||||
|
|
||||||
@ -228,7 +243,6 @@ void TRisoatt_msk::azzera_tutto(TSheet_field& sheet)
|
|||||||
//REGISTRA: metodo che salva nella tabella di modulo le
|
//REGISTRA: metodo che salva nella tabella di modulo le
|
||||||
void TRisoatt_msk::registra()
|
void TRisoatt_msk::registra()
|
||||||
{
|
{
|
||||||
//TLocalisamfile tabmod(LF_TABMOD);
|
|
||||||
TModule_table tab("&ROA");
|
TModule_table tab("&ROA");
|
||||||
const int anno = get_int(F_ANNO);
|
const int anno = get_int(F_ANNO);
|
||||||
TSheet_field& sheet = sfield(F_SHEET);
|
TSheet_field& sheet = sfield(F_SHEET);
|
||||||
@ -236,12 +250,11 @@ void TRisoatt_msk::registra()
|
|||||||
|
|
||||||
FOR_EACH_SHEET_ROW(sheet, r, row)
|
FOR_EACH_SHEET_ROW(sheet, r, row)
|
||||||
{
|
{
|
||||||
chiave.cut(0);
|
|
||||||
TToken_string& riga = *(TToken_string*)row;
|
TToken_string& riga = *(TToken_string*)row;
|
||||||
|
|
||||||
const TString4 del = riga.get(sheet.cid2index(S_DEL));
|
const TString4 del = riga.get(sheet.cid2index(S_DEL));
|
||||||
const TString4 lis = add_field_to_tab_key(riga, F_LIS);
|
const TString4 lis = add_field_to_tab_key(riga, F_LIS);
|
||||||
chiave << lis;
|
chiave = lis;
|
||||||
const TString4 tipo = add_field_to_tab_key(riga, S_RISOATT, 1);
|
const TString4 tipo = add_field_to_tab_key(riga, S_RISOATT, 1);
|
||||||
chiave << tipo;
|
chiave << tipo;
|
||||||
chiave << add_field_to_tab_key(riga, tipo[0] == 'R' ? S_CODRIS : S_CODATT);
|
chiave << add_field_to_tab_key(riga, tipo[0] == 'R' ? S_CODRIS : S_CODATT);
|
||||||
@ -254,7 +267,6 @@ void TRisoatt_msk::registra()
|
|||||||
|
|
||||||
tab.put("CODTAB", chiave);
|
tab.put("CODTAB", chiave);
|
||||||
int err = tab.read();
|
int err = tab.read();
|
||||||
|
|
||||||
if (err == NOERR)
|
if (err == NOERR)
|
||||||
{
|
{
|
||||||
if (del == "X")
|
if (del == "X")
|
||||||
|
@ -46,7 +46,6 @@ END
|
|||||||
NUMBER F_ANNO 4
|
NUMBER F_ANNO 4
|
||||||
BEGIN
|
BEGIN
|
||||||
PROMPT 2 1 "Anno "
|
PROMPT 2 1 "Anno "
|
||||||
CHECTYPE REQUIRED
|
|
||||||
FLAGS "A"
|
FLAGS "A"
|
||||||
END
|
END
|
||||||
|
|
||||||
@ -59,30 +58,31 @@ END
|
|||||||
|
|
||||||
STRING F_LIS 4
|
STRING F_LIS 4
|
||||||
BEGIN
|
BEGIN
|
||||||
PROMPT 44 1 "Listino "
|
PROMPT 45 1 "Listino "
|
||||||
USE &LIS
|
USE &LIS
|
||||||
FLAGS "UZ"
|
FLAGS "UZ"
|
||||||
INPUT CODTAB F_LIS
|
INPUT CODTAB F_LIS
|
||||||
DISPLAY "Codice@16" CODTAB
|
DISPLAY "Codice@16" CODTAB
|
||||||
DISPLAY "Descrizione@50" S0
|
DISPLAY "Descrizione@50" S0
|
||||||
OUTPUT F_LIS CODTAB
|
OUTPUT F_LIS CODTAB
|
||||||
CHECKTYPE NORMAL
|
CHECKTYPE REQUIRED
|
||||||
END
|
END
|
||||||
|
|
||||||
STRING F_TPORA 2
|
STRING F_TPORA 2
|
||||||
BEGIN
|
BEGIN
|
||||||
PROMPT 59 1 "Tipo ora "
|
PROMPT 62 1 "Tipo ora "
|
||||||
USE &ORE
|
USE &ORE
|
||||||
INPUT CODTAB F_TPORA
|
INPUT CODTAB F_TPORA
|
||||||
DISPLAY "Codice@16" CODTAB
|
DISPLAY "Codice@16" CODTAB
|
||||||
DISPLAY "Descrizione@50" S0
|
DISPLAY "Descrizione@50" S0
|
||||||
OUTPUT F_TPORA CODTAB
|
OUTPUT F_TPORA CODTAB
|
||||||
|
CHECKTYPE NORMAL
|
||||||
END
|
END
|
||||||
|
|
||||||
LISTBOX F_RISOATT 1 12
|
LISTBOX F_RISOATT 1 12
|
||||||
BEGIN
|
BEGIN
|
||||||
PROMPT 2 2 "@bTipo "
|
PROMPT 2 2 "@bTipo "
|
||||||
ITEM "T|Tutti"
|
ITEM "T|Tutte"
|
||||||
MESSAGE SHOW,1@|HIDE,2@|HIDE,3@|DISABLE,DLG_COPY
|
MESSAGE SHOW,1@|HIDE,2@|HIDE,3@|DISABLE,DLG_COPY
|
||||||
ITEM "R|Risorsa"
|
ITEM "R|Risorsa"
|
||||||
MESSAGE HIDE,1@|SHOW,2@|HIDE,3@|ENABLE,DLG_COPY
|
MESSAGE HIDE,1@|SHOW,2@|HIDE,3@|ENABLE,DLG_COPY
|
||||||
@ -95,16 +95,23 @@ STRING F_CODICE 16
|
|||||||
BEGIN
|
BEGIN
|
||||||
PROMPT 23 2 "Codice "
|
PROMPT 23 2 "Codice "
|
||||||
USE &ROA
|
USE &ROA
|
||||||
DISPLAY "Tipo@5" CODTAB[1,1]
|
DISPLAY "Listino" CODTAB[1,4]
|
||||||
DISPALY "Codice@16" CODTAB[2,17]
|
DISPLAY "Tipo\nR/A@4" CODTAB[5,5]
|
||||||
DISPLAY "Anno@5" CODTAB[18,21]
|
DISPLAY "Codice\nR/A@16" CODTAB[6,21]
|
||||||
DISPLAY "Mese@5" CODTAB[22,23]
|
DISPLAY "Anno" CODTAB[22,25]
|
||||||
DISPLAY "Tipo\nora@5" CODTAB[24,25]
|
DISPLAY "Mese" CODTAB[26,27]
|
||||||
OUTPUT F_RISOATT CODTAB[1,1]
|
DISPLAY "Giorno" CODTAB[28,29]
|
||||||
OUTPUT F_CODICE CODTAB[2,17]
|
DISPLAY "Tipo\nora@5" CODTAB[30,31]
|
||||||
|
OUTPUT F_LIS CODTAB[1,4]
|
||||||
|
OUTPUT F_RISOATT CODTAB[5,5]
|
||||||
|
OUTPUT F_CODICE CODTAB[6,21]
|
||||||
|
//OUTPUT F_ANNO CODTAB[22,25]
|
||||||
|
//OUTPUT F_MESE CODTAB[26,27]
|
||||||
GROUP 1
|
GROUP 1
|
||||||
FLAGS "U"
|
FLAGS "U"
|
||||||
CHECKTYPE NORMAL
|
CHECKTYPE NORMAL
|
||||||
|
MESSAGE COPY,F_CODRIS
|
||||||
|
MESSAGE COPY,F_CODATT
|
||||||
END
|
END
|
||||||
|
|
||||||
STRING F_CODRIS 16
|
STRING F_CODRIS 16
|
||||||
@ -154,13 +161,13 @@ SPREADSHEET F_SHEET -19 0
|
|||||||
BEGIN
|
BEGIN
|
||||||
PROMPT 1 4 ""
|
PROMPT 1 4 ""
|
||||||
ITEM "Canc"
|
ITEM "Canc"
|
||||||
ITEM "Tipo"
|
ITEM "Tipo\nR/A"
|
||||||
ITEM "Codice@16"
|
ITEM "Codice\nR/A@16"
|
||||||
ITEM "Anno"
|
ITEM "Anno"
|
||||||
ITEM "Mese"
|
ITEM "Mese"
|
||||||
ITEM "Tipo\nOra@5"
|
ITEM "Tipo\nOra@4"
|
||||||
ITEM "Costo@10"
|
ITEM "Costo\nConsuntivo@10"
|
||||||
ITEM "Costo Preventivo@10"
|
ITEM "Costo\nPreventivo@10"
|
||||||
ITEM "Descrizione@50"
|
ITEM "Descrizione@50"
|
||||||
END
|
END
|
||||||
|
|
||||||
|
120
ci/ci0300.cpp
120
ci/ci0300.cpp
@ -1,14 +1,9 @@
|
|||||||
#include <applicat.h>
|
#include <applicat.h>
|
||||||
#include <automask.h>
|
#include <automask.h>
|
||||||
#include <sheet.h>
|
#include "../ve/velib.h"
|
||||||
#include <utility.h>
|
|
||||||
|
|
||||||
#include <doc.h>
|
|
||||||
|
|
||||||
#include "ci0.h"
|
#include "ci0.h"
|
||||||
#include "cilib.h"
|
|
||||||
#include "ci0300.h"
|
#include "ci0300.h"
|
||||||
#include "../ve/velib.h"
|
|
||||||
|
|
||||||
///////////////////////////////////////////////////////////
|
///////////////////////////////////////////////////////////
|
||||||
// TConfigurazioneIndustriale_mask
|
// TConfigurazioneIndustriale_mask
|
||||||
@ -26,10 +21,11 @@ void TConfigurazioneIndustriale_mask::moveup_element(long selrow)
|
|||||||
return;
|
return;
|
||||||
|
|
||||||
rows_array().swap(selrow,selrow - 1);
|
rows_array().swap(selrow,selrow - 1);
|
||||||
sheet().check_row(selrow - 1);
|
TSheet_field& s = sheet();
|
||||||
sheet().check_row(selrow);
|
s.check_row(selrow - 1);
|
||||||
sheet().force_update();
|
s.check_row(selrow);
|
||||||
sheet().select(selrow-1);
|
s.force_update();
|
||||||
|
s.select(selrow-1);
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -45,10 +41,11 @@ void TConfigurazioneIndustriale_mask::movedown_element(long selrow)
|
|||||||
return;
|
return;
|
||||||
|
|
||||||
rows_array().swap(selrow,selrow+1);
|
rows_array().swap(selrow,selrow+1);
|
||||||
sheet().check_row(selrow);
|
TSheet_field& s = sheet();
|
||||||
sheet().check_row(selrow + 1);
|
s.check_row(selrow);
|
||||||
sheet().force_update();
|
s.check_row(selrow + 1);
|
||||||
sheet().select(selrow+1);
|
s.force_update();
|
||||||
|
s.select(selrow+1);
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -65,17 +62,16 @@ bool TConfigurazioneIndustriale_mask::on_field_event(TOperable_field& o, TField_
|
|||||||
case FR_TIPODOC:
|
case FR_TIPODOC:
|
||||||
if (e == fe_modify)
|
if (e == fe_modify)
|
||||||
{
|
{
|
||||||
TCodice_numerazione cod_num(o.mask().get(FR_NUM));
|
const TCodice_numerazione cod_num(o.mask().get(FR_NUM));
|
||||||
const TString& tipo = o.get();
|
const TString& tipo = o.get();
|
||||||
int last = cod_num.ntipi_doc();
|
const int last = cod_num.ntipi_doc();
|
||||||
|
|
||||||
for (int i = 0; i < last; i++ )
|
for (int i = 0; i < last; i++ )
|
||||||
{
|
{
|
||||||
const TString16 curtipo(cod_num.tipo_doc(i));
|
const TString& curtipo = cod_num.tipo_doc(i);
|
||||||
if (curtipo == tipo)
|
if (curtipo == tipo)
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
return o.error_box( "Tipo non valido per la numerazione selezionata!" );
|
return o.error_box(TR("Tipo non valido per la numerazione selezionata!"));
|
||||||
}
|
}
|
||||||
|
|
||||||
case FR_COLL:
|
case FR_COLL:
|
||||||
@ -89,9 +85,10 @@ bool TConfigurazioneIndustriale_mask::on_field_event(TOperable_field& o, TField_
|
|||||||
row_mask.set(FR_VAR, "");
|
row_mask.set(FR_VAR, "");
|
||||||
row_mask.set(FR_MODCOLL, "");
|
row_mask.set(FR_MODCOLL, "");
|
||||||
const int row = sheet().selected();
|
const int row = sheet().selected();
|
||||||
sheet().update_row(row);
|
TSheet_field& s = sheet();
|
||||||
sheet().check_row(row);
|
s.update_row(row);
|
||||||
sheet().force_update(row);
|
s.check_row(row);
|
||||||
|
s.force_update(row);
|
||||||
}
|
}
|
||||||
default:
|
default:
|
||||||
break;
|
break;
|
||||||
@ -118,7 +115,6 @@ bool TConfigurazioneIndustriale_app::create()
|
|||||||
bool TConfigurazioneIndustriale_app::destroy()
|
bool TConfigurazioneIndustriale_app::destroy()
|
||||||
{
|
{
|
||||||
delete _mask;
|
delete _mask;
|
||||||
|
|
||||||
return TSkeleton_application::destroy();
|
return TSkeleton_application::destroy();
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -128,7 +124,6 @@ void TConfigurazioneIndustriale_app::main_loop()
|
|||||||
|
|
||||||
while ((exitval=_mask->run()) != K_QUIT)
|
while ((exitval=_mask->run()) != K_QUIT)
|
||||||
{
|
{
|
||||||
|
|
||||||
switch(exitval)
|
switch(exitval)
|
||||||
{
|
{
|
||||||
case K_ESC:
|
case K_ESC:
|
||||||
@ -146,11 +141,13 @@ void TConfigurazioneIndustriale_app::main_loop()
|
|||||||
void TConfigurazioneIndustriale_app::file_to_sheet()
|
void TConfigurazioneIndustriale_app::file_to_sheet()
|
||||||
{
|
{
|
||||||
TConfig configfile(CONFIG_DITTA, "ci");
|
TConfig configfile(CONFIG_DITTA, "ci");
|
||||||
int item = 0;
|
|
||||||
|
|
||||||
while (configfile.exist("Descr",item))
|
TConfigurazioneIndustriale_mask& m = mask();
|
||||||
|
TSheet_field& s = m.sheet();
|
||||||
|
|
||||||
|
for (int item = 0; configfile.exist("Descr", item); item++)
|
||||||
{
|
{
|
||||||
TToken_string & t = mask().sheet().row(item);
|
TToken_string & t = s.row(item);
|
||||||
t.add(configfile.get("Filter", NULL,item, "F01"));
|
t.add(configfile.get("Filter", NULL,item, "F01"));
|
||||||
t.add(configfile.get("Descr", NULL,item, "Fatture"));
|
t.add(configfile.get("Descr", NULL,item, "Fatture"));
|
||||||
t.add(configfile.get("InsertRemain", NULL,item, ""));
|
t.add(configfile.get("InsertRemain", NULL,item, ""));
|
||||||
@ -162,25 +159,28 @@ void TConfigurazioneIndustriale_app::file_to_sheet()
|
|||||||
t.add(configfile.get("ModColl", NULL, item, ""));
|
t.add(configfile.get("ModColl", NULL, item, ""));
|
||||||
t.add(configfile.get("Var", NULL, item, ""));
|
t.add(configfile.get("Var", NULL, item, ""));
|
||||||
t.add(configfile.get("DeleteClosed", NULL, item, ""));
|
t.add(configfile.get("DeleteClosed", NULL, item, ""));
|
||||||
mask().sheet().check_row(item);
|
s.check_row(item);
|
||||||
item++;
|
|
||||||
}
|
}
|
||||||
mask().set(F_DETTDISP, configfile.get("DETTDISP"));
|
|
||||||
mask().set(F_DETTCONS, configfile.get("DETTCONS"));
|
FOR_EACH_MASK_FIELD(m, i, f)
|
||||||
mask().set(F_CODNUMPR, configfile.get("CODNUMPR"));
|
{
|
||||||
mask().set(F_TIPODOCPR, configfile.get("TIPODOCPR"));
|
const TFieldref* fr = f->field();
|
||||||
mask().set(F_CODNUMCN, configfile.get("CODNUMCN"));
|
if (fr != NULL)
|
||||||
mask().set(F_TIPODOCCN, configfile.get("TIPODOCCN"));
|
{
|
||||||
mask().sheet().force_update();
|
const TString& v = configfile.get(fr->name());
|
||||||
|
f->set(v);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
s.force_update();
|
||||||
}
|
}
|
||||||
|
|
||||||
void TConfigurazioneIndustriale_app::sheet_to_file()
|
void TConfigurazioneIndustriale_app::sheet_to_file()
|
||||||
{
|
{
|
||||||
|
TConfigurazioneIndustriale_mask& m = mask();
|
||||||
TConfig configfile(CONFIG_DITTA, "ci");
|
TConfig configfile(CONFIG_DITTA, "ci");
|
||||||
int totlen = 0;
|
int totlen = 0;
|
||||||
int items;
|
int items = m.items();
|
||||||
|
|
||||||
items = mask().items();
|
|
||||||
configfile.remove_all();
|
configfile.remove_all();
|
||||||
|
|
||||||
if (items>_maxelem)
|
if (items>_maxelem)
|
||||||
@ -189,31 +189,37 @@ void TConfigurazioneIndustriale_app::sheet_to_file()
|
|||||||
items=16;
|
items=16;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
TString currdesc;
|
||||||
for (int i=0;i<items;i++)
|
for (int i=0;i<items;i++)
|
||||||
{
|
{
|
||||||
TString currdesc(mask().row(i).get(1));
|
TToken_string& ri = m.row(i);
|
||||||
configfile.set("Filter", mask().row(i).get(0), NULL, true, i);
|
currdesc = ri.get(1);
|
||||||
|
configfile.set("Filter", ri.get(0), NULL, true, i);
|
||||||
configfile.set("Descr", currdesc, NULL, true, i);
|
configfile.set("Descr", currdesc, NULL, true, i);
|
||||||
configfile.set("InsertRemain", mask().row(i).get(2), NULL, true, i);
|
configfile.set("InsertRemain", ri.get(2), NULL, true, i);
|
||||||
configfile.set("ModifyRemain", mask().row(i).get(3), NULL, true, i);
|
configfile.set("ModifyRemain", ri.get(3), NULL, true, i);
|
||||||
configfile.set("DocColl", mask().row(i).get(4), NULL, true, i);
|
configfile.set("DocColl", ri.get(4), NULL, true, i);
|
||||||
configfile.set("NumColl", mask().row(i).get(5), NULL, true, i);
|
configfile.set("NumColl", ri.get(5), NULL, true, i);
|
||||||
configfile.set("TipoColl", mask().row(i).get(6), NULL, true, i);
|
configfile.set("TipoColl", ri.get(6), NULL, true, i);
|
||||||
configfile.set("StatoColl", mask().row(i).get(7), NULL, true, i);
|
configfile.set("StatoColl", ri.get(7), NULL, true, i);
|
||||||
configfile.set("ModColl", mask().row(i).get(8), NULL, true, i);
|
configfile.set("ModColl", ri.get(8), NULL, true, i);
|
||||||
configfile.set("Var", mask().row(i).get(9), NULL, true, i);
|
configfile.set("Var", ri.get(9), NULL, true, i);
|
||||||
configfile.set("DeleteClosed", mask().row(i).get(10), NULL, true, i);
|
configfile.set("DeleteClosed", ri.get(10), NULL, true, i);
|
||||||
totlen += currdesc.len();
|
totlen += currdesc.len();
|
||||||
}
|
}
|
||||||
configfile.set("DETTDISP", mask().get(F_DETTDISP));
|
|
||||||
configfile.set("DETTCONS", mask().get(F_DETTCONS));
|
FOR_EACH_MASK_FIELD(m, i, f)
|
||||||
configfile.set("CODNUMPR", mask().get(F_CODNUMPR));
|
{
|
||||||
configfile.set("TIPODOCPR", mask().get(F_TIPODOCPR));
|
const TFieldref* fr = f->field();
|
||||||
configfile.set("CODNUMCN", mask().get(F_CODNUMCN));
|
if (fr != NULL)
|
||||||
configfile.set("TIPODOCCN", mask().get(F_TIPODOCCN));
|
{
|
||||||
|
const TString& v = f->get();
|
||||||
|
configfile.set(fr->name(), v);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
if (totlen>_maxlen)
|
if (totlen>_maxlen)
|
||||||
message_box("E' probabile che la lunghezza delle descrizioni inserite ne impedisca la totale visualizzazione sullo schermo");
|
warning_box(TR("E' probabile che la lunghezza delle descrizioni inserite ne impedisca la totale visualizzazione sullo schermo"));
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -17,8 +17,8 @@ public:
|
|||||||
void movedown_element(long selrow);
|
void movedown_element(long selrow);
|
||||||
|
|
||||||
public:
|
public:
|
||||||
TSheet_field& sheet() { return (TSheet_field&)field(F_SHEET); }
|
TSheet_field& sheet() const { return sfield(F_SHEET); }
|
||||||
int items() { return sheet().items(); }
|
int items() const { return sheet().items(); }
|
||||||
TString_array& rows_array() { return sheet().rows_array(); }
|
TString_array& rows_array() { return sheet().rows_array(); }
|
||||||
TToken_string& row(int i) { return sheet().row(i); }
|
TToken_string& row(int i) { return sheet().row(i); }
|
||||||
|
|
||||||
|
14
ci/ci0300a.h
14
ci/ci0300a.h
@ -14,7 +14,15 @@
|
|||||||
#define F_DESNUMCN 162
|
#define F_DESNUMCN 162
|
||||||
#define F_TIPODOCCN 163
|
#define F_TIPODOCCN 163
|
||||||
#define F_DESTIPODOCCN 164
|
#define F_DESTIPODOCCN 164
|
||||||
|
#define F_CAUSCN 171
|
||||||
|
#define F_DESCAUSCN 172
|
||||||
|
|
||||||
|
#define F_CODNUMNI 165
|
||||||
|
#define F_DESNUMNI 166
|
||||||
|
#define F_TIPODOCNI 167
|
||||||
|
#define F_DESTIPODOCNI 168
|
||||||
|
#define F_CODIVANI 169
|
||||||
|
#define F_DESIVANI 170
|
||||||
|
|
||||||
#define FR_FILTRO 101
|
#define FR_FILTRO 101
|
||||||
#define FR_DES 102
|
#define FR_DES 102
|
||||||
@ -28,6 +36,6 @@
|
|||||||
#define FR_VAR 110
|
#define FR_VAR 110
|
||||||
#define FR_DELCLOSE 111
|
#define FR_DELCLOSE 111
|
||||||
|
|
||||||
#define FR_DESNUM 201
|
#define FR_DESNUM 251
|
||||||
#define FR_DESTIPODOC 202
|
#define FR_DESTIPODOC 252
|
||||||
#define FR_DESSTA 203
|
#define FR_DESSTA 253
|
||||||
|
148
ci/ci0300a.uml
148
ci/ci0300a.uml
@ -46,6 +46,11 @@ ENDPAGE
|
|||||||
|
|
||||||
PAGE "Parametri" 0 2 0 0
|
PAGE "Parametri" 0 2 0 0
|
||||||
|
|
||||||
|
GROUPBOX DLG_NULL 78 4
|
||||||
|
BEGIN
|
||||||
|
PROMPT 1 1 "@bLivello di dettaglio"
|
||||||
|
END
|
||||||
|
|
||||||
LISTBOX F_DETTDISP 6
|
LISTBOX F_DETTDISP 6
|
||||||
BEGIN
|
BEGIN
|
||||||
PROMPT 2 2 "Dettaglio disponibilità "
|
PROMPT 2 2 "Dettaglio disponibilità "
|
||||||
@ -57,16 +62,21 @@ END
|
|||||||
|
|
||||||
LISTBOX F_DETTCONS 6
|
LISTBOX F_DETTCONS 6
|
||||||
BEGIN
|
BEGIN
|
||||||
PROMPT 2 4 "Dettaglio Consuntivi "
|
PROMPT 2 3 "Dettaglio consuntivi "
|
||||||
ITEM "G|Giorno"
|
ITEM "G|Giorno"
|
||||||
ITEM "M|Mese"
|
ITEM "M|Mese"
|
||||||
ITEM "A|Anno"
|
ITEM "A|Anno"
|
||||||
FIELD DETTCONS
|
FIELD DETTCONS
|
||||||
END
|
END
|
||||||
|
|
||||||
|
GROUPBOX DLG_NULL 78 4
|
||||||
|
BEGIN
|
||||||
|
PROMPT 1 5 "@bPreventivi"
|
||||||
|
END
|
||||||
|
|
||||||
STRING F_CODNUMPR 4
|
STRING F_CODNUMPR 4
|
||||||
BEGIN
|
BEGIN
|
||||||
PROMPT 2 6 "Num.preventivi "
|
PROMPT 2 6 "Numerazione "
|
||||||
FIELD CODNUMPR
|
FIELD CODNUMPR
|
||||||
HELP "Codice numerazione"
|
HELP "Codice numerazione"
|
||||||
USE %NUM
|
USE %NUM
|
||||||
@ -83,7 +93,7 @@ END
|
|||||||
|
|
||||||
STRING F_DESNUMPR 50
|
STRING F_DESNUMPR 50
|
||||||
BEGIN
|
BEGIN
|
||||||
PROMPT 26 6 ""
|
PROMPT 25 6 ""
|
||||||
HELP "Descrizione numerazione"
|
HELP "Descrizione numerazione"
|
||||||
USE %NUM KEY 2
|
USE %NUM KEY 2
|
||||||
INPUT S0 F_DESNUMPR
|
INPUT S0 F_DESNUMPR
|
||||||
@ -94,7 +104,7 @@ END
|
|||||||
|
|
||||||
STRING F_TIPODOCPR 4
|
STRING F_TIPODOCPR 4
|
||||||
BEGIN
|
BEGIN
|
||||||
PROMPT 2 8 "Tipo preventivi"
|
PROMPT 2 7 "Tipo documento "
|
||||||
FIELD TIPODOCPR
|
FIELD TIPODOCPR
|
||||||
HELP "Codice tipo documento"
|
HELP "Codice tipo documento"
|
||||||
USE %TIP
|
USE %TIP
|
||||||
@ -109,7 +119,7 @@ END
|
|||||||
|
|
||||||
STRING F_DESTIPODOCPR 50
|
STRING F_DESTIPODOCPR 50
|
||||||
BEGIN
|
BEGIN
|
||||||
PROMPT 26 8 ""
|
PROMPT 25 7 ""
|
||||||
HELP "Descrizione tipo documento"
|
HELP "Descrizione tipo documento"
|
||||||
USE %TIP KEY 2
|
USE %TIP KEY 2
|
||||||
INPUT S0 F_DESTIPODOCPR
|
INPUT S0 F_DESTIPODOCPR
|
||||||
@ -118,9 +128,14 @@ BEGIN
|
|||||||
COPY OUTPUT F_TIPODOCPR
|
COPY OUTPUT F_TIPODOCPR
|
||||||
END
|
END
|
||||||
|
|
||||||
|
GROUPBOX DLG_NULL 78 5
|
||||||
|
BEGIN
|
||||||
|
PROMPT 1 9 "@bConsuntivi"
|
||||||
|
END
|
||||||
|
|
||||||
STRING F_CODNUMCN 4
|
STRING F_CODNUMCN 4
|
||||||
BEGIN
|
BEGIN
|
||||||
PROMPT 2 10 "Num.consuntivi "
|
PROMPT 2 10 "Numerazione "
|
||||||
FIELD CODNUMCN
|
FIELD CODNUMCN
|
||||||
HELP "Codice numerazione"
|
HELP "Codice numerazione"
|
||||||
USE %NUM
|
USE %NUM
|
||||||
@ -132,12 +147,11 @@ BEGIN
|
|||||||
CHECKTYPE NORMAL
|
CHECKTYPE NORMAL
|
||||||
FLAG "UPA"
|
FLAG "UPA"
|
||||||
WARNING "Numerazione assente"
|
WARNING "Numerazione assente"
|
||||||
KEY 1 2
|
|
||||||
END
|
END
|
||||||
|
|
||||||
STRING F_DESNUMCN 50
|
STRING F_DESNUMCN 50
|
||||||
BEGIN
|
BEGIN
|
||||||
PROMPT 26 10 ""
|
PROMPT 25 10 ""
|
||||||
HELP "Descrizione numerazione"
|
HELP "Descrizione numerazione"
|
||||||
USE %NUM KEY 2
|
USE %NUM KEY 2
|
||||||
INPUT S0 F_DESNUMCN
|
INPUT S0 F_DESNUMCN
|
||||||
@ -148,8 +162,8 @@ END
|
|||||||
|
|
||||||
STRING F_TIPODOCCN 4
|
STRING F_TIPODOCCN 4
|
||||||
BEGIN
|
BEGIN
|
||||||
PROMPT 2 12 "Tipo consuntivi"
|
PROMPT 2 11 "Tipo documento "
|
||||||
FIELD TIPODOCPR
|
FIELD TIPODOCCN
|
||||||
HELP "Codice tipo documento"
|
HELP "Codice tipo documento"
|
||||||
USE %TIP
|
USE %TIP
|
||||||
INPUT CODTAB F_TIPODOCCN
|
INPUT CODTAB F_TIPODOCCN
|
||||||
@ -163,7 +177,7 @@ END
|
|||||||
|
|
||||||
STRING F_DESTIPODOCCN 50
|
STRING F_DESTIPODOCCN 50
|
||||||
BEGIN
|
BEGIN
|
||||||
PROMPT 26 12 ""
|
PROMPT 25 11 ""
|
||||||
HELP "Descrizione tipo documento"
|
HELP "Descrizione tipo documento"
|
||||||
USE %TIP KEY 2
|
USE %TIP KEY 2
|
||||||
INPUT S0 F_DESTIPODOCCN
|
INPUT S0 F_DESTIPODOCCN
|
||||||
@ -171,6 +185,118 @@ BEGIN
|
|||||||
DISPLAY "Codice" CODTAB
|
DISPLAY "Codice" CODTAB
|
||||||
COPY OUTPUT F_TIPODOCCN
|
COPY OUTPUT F_TIPODOCCN
|
||||||
END
|
END
|
||||||
|
|
||||||
|
STRING F_CAUSCN 4
|
||||||
|
BEGIN
|
||||||
|
PROMPT 2 12 "Casuale cont. "
|
||||||
|
USE LF_CAUSALI SELECT MOVIND="X"
|
||||||
|
INPUT CODCAUS F_CAUSCN
|
||||||
|
DISPLAY "Codice" CODCAUS
|
||||||
|
DISPLAY "Descrizione@50" DESCR
|
||||||
|
DISPLAY "Analitica@C" MOVIND
|
||||||
|
DISPLAY "Industriale@C" MOVCGIND
|
||||||
|
OUTPUT F_CAUSCN CODCAUS
|
||||||
|
OUTPUT F_DESCAUSCN DESCR
|
||||||
|
CHECKTYPE NORMAL
|
||||||
|
ADD RUN cg0 -4
|
||||||
|
FIELD CODCAUSCN
|
||||||
|
END
|
||||||
|
|
||||||
|
STRING F_DESCAUSCN 50
|
||||||
|
BEGIN
|
||||||
|
PROMPT 25 12 ""
|
||||||
|
USE LF_CAUSALI KEY 2 SELECT MOVIND="X"
|
||||||
|
INPUT DESCR F_DESCAUSCN
|
||||||
|
DISPLAY "Descrizione@50" DESCR
|
||||||
|
DISPLAY "Codice" CODCAUS
|
||||||
|
DISPLAY "Analitica@C" MOVIND
|
||||||
|
DISPLAY "Industriale@C" MOVCGIND
|
||||||
|
COPY OUTPUT F_CAUSCN
|
||||||
|
CHECKTYPE NORMAL
|
||||||
|
ADD RUN cg0 -4
|
||||||
|
END
|
||||||
|
|
||||||
|
GROUPBOX DLG_NULL 78 5
|
||||||
|
BEGIN
|
||||||
|
PROMPT 1 14 "@bMovimenti NON IVA"
|
||||||
|
END
|
||||||
|
|
||||||
|
STRING F_CODNUMNI 4
|
||||||
|
BEGIN
|
||||||
|
PROMPT 2 15 "Numerazione "
|
||||||
|
FIELD CODNUMNI
|
||||||
|
HELP "Codice numerazione"
|
||||||
|
COPY USE F_CODNUMPR
|
||||||
|
INPUT CODTAB F_CODNUMNI
|
||||||
|
COPY DISPLAY F_CODNUMPR
|
||||||
|
OUTPUT F_CODNUMNI CODTAB
|
||||||
|
OUTPUT F_DESNUMNI S0
|
||||||
|
CHECKTYPE NORMAL
|
||||||
|
FLAG "UPA"
|
||||||
|
WARNING "Numerazione assente"
|
||||||
|
END
|
||||||
|
|
||||||
|
STRING F_DESNUMNI 50
|
||||||
|
BEGIN
|
||||||
|
PROMPT 25 15 ""
|
||||||
|
HELP "Descrizione numerazione"
|
||||||
|
COPY USE F_DESNUMPR
|
||||||
|
INPUT S0 F_DESNUMNI
|
||||||
|
COPY DISPLAY F_DESNUMPR
|
||||||
|
COPY OUTPUT F_CODNUMNI
|
||||||
|
END
|
||||||
|
|
||||||
|
STRING F_TIPODOCNI 4
|
||||||
|
BEGIN
|
||||||
|
PROMPT 2 16 "Tipo documento "
|
||||||
|
FIELD TIPODOCNI
|
||||||
|
HELP "Codice tipo documento"
|
||||||
|
COPY USE F_TIPODOCPR
|
||||||
|
INPUT CODTAB F_TIPODOCNI
|
||||||
|
COPY DISPLAY F_TIPODOCPR
|
||||||
|
OUTPUT F_TIPODOCNI CODTAB
|
||||||
|
OUTPUT F_DESTIPODOCNI S0
|
||||||
|
CHECKTYPE NORMAL
|
||||||
|
FLAG "UP"
|
||||||
|
END
|
||||||
|
|
||||||
|
STRING F_DESTIPODOCNI 50
|
||||||
|
BEGIN
|
||||||
|
PROMPT 25 16 ""
|
||||||
|
HELP "Descrizione tipo documento"
|
||||||
|
COPY USE F_DESTIPODOCPR
|
||||||
|
INPUT S0 F_DESTIPODOCNI
|
||||||
|
COPY DISPLAY F_DESTIPODOCPR
|
||||||
|
COPY OUTPUT F_TIPODOCNI
|
||||||
|
END
|
||||||
|
|
||||||
|
STRING F_CODIVANI 4
|
||||||
|
BEGIN
|
||||||
|
PROMPT 2 17 "Codice IVA "
|
||||||
|
FIELD CODIVANI
|
||||||
|
HELP "Codice IVA"
|
||||||
|
USE %IVA
|
||||||
|
INPUT CODTAB F_CODIVANI
|
||||||
|
DISPLAY "Codice" CODTAB
|
||||||
|
DISPLAY "Descrizione@50" S0
|
||||||
|
OUTPUT F_CODIVANI CODTAB
|
||||||
|
OUTPUT F_DESIVANI S0
|
||||||
|
CHECKTYPE NORMAL
|
||||||
|
FLAGS "U"
|
||||||
|
END
|
||||||
|
|
||||||
|
STRING F_DESIVANI 50
|
||||||
|
BEGIN
|
||||||
|
PROMPT 25 17 ""
|
||||||
|
HELP "Descrizione IVA"
|
||||||
|
USE %IVA KEY 2
|
||||||
|
INPUT S0 F_DESIVANI
|
||||||
|
DISPLAY "Descrizione@50" S0
|
||||||
|
DISPLAY "Codice" CODTAB
|
||||||
|
COPY OUTPUT F_CODIVANI
|
||||||
|
CHECKTYPE NORMAL
|
||||||
|
END
|
||||||
|
|
||||||
ENDPAGE
|
ENDPAGE
|
||||||
|
|
||||||
ENDMASK
|
ENDMASK
|
||||||
|
15
ci/ci1.cpp
15
ci/ci1.cpp
@ -6,17 +6,10 @@ int main(int argc, char** argv)
|
|||||||
const int op = (argc > 1) ? argv[1][1] - '0' : 0;
|
const int op = (argc > 1) ? argv[1][1] - '0' : 0;
|
||||||
switch (op)
|
switch (op)
|
||||||
{
|
{
|
||||||
case 1:
|
case 1: ci1200(argc,argv); break; // stampa
|
||||||
ci1200(argc,argv); // stampa
|
case 2: ci1300(argc,argv); break; // rilevazione ore mensili per risorsa - attrezzatura
|
||||||
break;
|
case 3: ci1400(argc,argv); break; // rilevazione ore mensili per cms - cdc
|
||||||
case 2:
|
default: break;
|
||||||
ci1300(argc,argv); // rilevazione ore mensili per risorsa - attrezzatura
|
|
||||||
break;
|
|
||||||
case 3:
|
|
||||||
ci1400(argc,argv); // rilevazione ore mensili per cms - cdc
|
|
||||||
break;
|
|
||||||
default:
|
|
||||||
break;
|
|
||||||
}
|
}
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
@ -9,8 +9,9 @@
|
|||||||
#include "../ca/rmovana.h"
|
#include "../ca/rmovana.h"
|
||||||
#include "../ve/velib07.h"
|
#include "../ve/velib07.h"
|
||||||
|
|
||||||
#include "../include/doc.h"
|
//#include "../include/doc.h"
|
||||||
#include "../include/rdoc.h"
|
//#include "../include/rdoc.h"
|
||||||
|
#include "../ca/commesse.h"
|
||||||
|
|
||||||
///////////////////////////////////////////////////////////
|
///////////////////////////////////////////////////////////
|
||||||
// TRiepiloghi_mask
|
// TRiepiloghi_mask
|
||||||
@ -136,6 +137,7 @@ class TRiepiloghi_recordset : public TDocument_recordset
|
|||||||
TString _da_codart, _a_codart;
|
TString _da_codart, _a_codart;
|
||||||
TString _codcosto, _codcms, _codfas;
|
TString _codcosto, _codcms, _codfas;
|
||||||
TString_array _tipidoc;
|
TString_array _tipidoc;
|
||||||
|
int _chiusure;
|
||||||
|
|
||||||
protected:
|
protected:
|
||||||
static bool rdoc_filter(const TRelation* rel);
|
static bool rdoc_filter(const TRelation* rel);
|
||||||
@ -155,18 +157,27 @@ bool TRiepiloghi_recordset::valid_record(const TRelation& rel) const
|
|||||||
{
|
{
|
||||||
const TRectype& doc = rel.curr(LF_DOC);
|
const TRectype& doc = rel.curr(LF_DOC);
|
||||||
|
|
||||||
|
if (_da_data.ok() || _a_data.ok())
|
||||||
|
{
|
||||||
const TDate data = doc.get(DOC_DATADOC);
|
const TDate data = doc.get(DOC_DATADOC);
|
||||||
if (data < _da_data || (_a_data.ok() && data > _a_data))
|
if (data < _da_data || (_a_data.ok() && data > _a_data))
|
||||||
return false;
|
return false;
|
||||||
|
}
|
||||||
|
|
||||||
|
if (_da_clifo > 0 || _a_clifo > 0)
|
||||||
|
{
|
||||||
const long clifo = doc.get_long(DOC_CODCF);
|
const long clifo = doc.get_long(DOC_CODCF);
|
||||||
if (clifo < _da_clifo || (_a_clifo > 0 && clifo > _a_clifo))
|
if (clifo < _da_clifo || (_a_clifo > 0 && clifo > _a_clifo))
|
||||||
return false;
|
return false;
|
||||||
|
}
|
||||||
|
|
||||||
const TRectype& rdoc = rel.curr(LF_RIGHEDOC);
|
const TRectype& rdoc = rel.curr(LF_RIGHEDOC);
|
||||||
|
if (_da_codart.full() || _a_codart.full())
|
||||||
|
{
|
||||||
const TString& codart = rdoc.get(RDOC_CODART);
|
const TString& codart = rdoc.get(RDOC_CODART);
|
||||||
if (codart < _da_codart || (_a_codart.not_empty() && codart.compare(_a_codart, _a_codart.len()) > 0))
|
if (codart < _da_codart || (_a_codart.not_empty() && codart.compare(_a_codart, _a_codart.len()) > 0))
|
||||||
return false;
|
return false;
|
||||||
|
}
|
||||||
|
|
||||||
if (!_tipidoc.empty())
|
if (!_tipidoc.empty())
|
||||||
{
|
{
|
||||||
@ -195,25 +206,34 @@ bool TRiepiloghi_recordset::valid_record(const TRelation& rel) const
|
|||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (_codcosto.not_empty())
|
if (_codcosto.full())
|
||||||
{
|
{
|
||||||
const TString& cos = rdoc.get(RDOC_CODCOSTO);
|
const TString& cos = rdoc.get(RDOC_CODCOSTO);
|
||||||
if (cos != _codcosto)
|
if (cos != _codcosto)
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
if (_codcms.not_empty())
|
|
||||||
|
TString80 codcms = rdoc.get(RDOC_CODCMS);
|
||||||
|
if (codcms.blank())
|
||||||
|
codcms = doc.get(DOC_CODCMS);
|
||||||
|
if (_codcms.full() && codcms != _codcms)
|
||||||
|
return false;
|
||||||
|
if (codcms.full() && (_chiusure == 1 || _chiusure == 2)) // Solo aperte o solo chiuse
|
||||||
{
|
{
|
||||||
const TString& cms = rdoc.get(RDOC_CODCMS);
|
const TRectype& cms = cache().get(LF_COMMESSE, codcms);
|
||||||
if (cms != _codcms)
|
const int c = cms.get_bool(COMMESSE_CHIUSA) ? 2 : 1;
|
||||||
|
if (_chiusure != c)
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
if (_codfas.not_empty())
|
|
||||||
|
if (_codfas.full())
|
||||||
{
|
{
|
||||||
const TString& fas = rdoc.get(RDOC_FASCMS);
|
const TString& fas = rdoc.get(RDOC_FASCMS);
|
||||||
if (fas != _codfas)
|
if (fas != _codfas)
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -314,6 +334,8 @@ void TRiepiloghi_recordset::set_filter(const TRiepiloghi_mask& msk, int cms_row)
|
|||||||
_a_codart = msk.get(F_A_CODART);
|
_a_codart = msk.get(F_A_CODART);
|
||||||
set_var("#S_DACODART", TVariant(_da_codart), true);
|
set_var("#S_DACODART", TVariant(_da_codart), true);
|
||||||
set_var("#S_ACODART", TVariant(_a_codart), true);
|
set_var("#S_ACODART", TVariant(_a_codart), true);
|
||||||
|
|
||||||
|
_chiusure = msk.get_int(F_CHIUSURA);
|
||||||
}
|
}
|
||||||
|
|
||||||
///////////////////////////////////////////////////////////
|
///////////////////////////////////////////////////////////
|
||||||
|
@ -1,5 +1,7 @@
|
|||||||
#define F_REPORT 151
|
#define F_REPORT 151
|
||||||
|
|
||||||
|
#define F_CHIUSURA 152
|
||||||
|
|
||||||
#define F_DA_DATA 153
|
#define F_DA_DATA 153
|
||||||
#define F_A_DATA 154
|
#define F_A_DATA 154
|
||||||
|
|
||||||
|
@ -122,6 +122,14 @@ BEGIN
|
|||||||
CHECKTYPE NORMAL
|
CHECKTYPE NORMAL
|
||||||
END
|
END
|
||||||
|
|
||||||
|
RADIOBUTTON F_CHIUSURA 1 15
|
||||||
|
BEGIN
|
||||||
|
PROMPT 63 6 "Commesse"
|
||||||
|
ITEM "0|Tutte"
|
||||||
|
ITEM "1|Aperte"
|
||||||
|
ITEM "2|Chiuse"
|
||||||
|
END
|
||||||
|
|
||||||
TEXT DLG_NULL
|
TEXT DLG_NULL
|
||||||
BEGIN
|
BEGIN
|
||||||
PROMPT 1 10 "@bTipi documento"
|
PROMPT 1 10 "@bTipi documento"
|
||||||
|
@ -6,9 +6,9 @@ int main(int argc, char** argv)
|
|||||||
const int op = (argc > 1) ? argv[1][1] - '0' : 0;
|
const int op = (argc > 1) ? argv[1][1] - '0' : 0;
|
||||||
switch (op)
|
switch (op)
|
||||||
{
|
{
|
||||||
case 0 : ci2100(argc,argv); break; // Rilevamento preventivi
|
|
||||||
case 1 : ci2200(argc,argv); break; // Rilevamento consuntivo
|
case 1 : ci2200(argc,argv); break; // Rilevamento consuntivo
|
||||||
case 2 : ci2300(argc,argv); break; // Importatore da TeamSystem
|
case 2 : ci2300(argc,argv); break; // Importatore da TeamSystem
|
||||||
|
case 3 : ci2400(argc,argv); break; // Rilevamento consuntivo avanzato
|
||||||
default: ci2100(argc,argv); break; // Rilevamento preventivi
|
default: ci2100(argc,argv); break; // Rilevamento preventivi
|
||||||
}
|
}
|
||||||
return 0;
|
return 0;
|
||||||
|
3
ci/ci2.h
3
ci/ci2.h
@ -3,6 +3,7 @@
|
|||||||
|
|
||||||
int ci2100(int argc, char* argv[]); // Rilevamento preventivi
|
int ci2100(int argc, char* argv[]); // Rilevamento preventivi
|
||||||
int ci2200(int argc, char* argv[]); // Rilevamento consuntivi
|
int ci2200(int argc, char* argv[]); // Rilevamento consuntivi
|
||||||
int ci2300(int argc, char* argv[]); // Rilevamento consuntivi
|
int ci2300(int argc, char* argv[]); // Importazione consuntivi
|
||||||
|
int ci2400(int argc, char* argv[]); // Rilevamento consuntivi avanzato
|
||||||
|
|
||||||
#endif // __CI2_H
|
#endif // __CI2_H
|
||||||
|
@ -127,7 +127,7 @@ BEGIN
|
|||||||
GROUP 3
|
GROUP 3
|
||||||
END
|
END
|
||||||
|
|
||||||
SPREADSHEET F_SHEET -18 0
|
SPREADSHEET F_SHEET 0 0
|
||||||
BEGIN
|
BEGIN
|
||||||
PROMPT 1 7 ""
|
PROMPT 1 7 ""
|
||||||
ITEM "Canc"
|
ITEM "Canc"
|
||||||
|
@ -33,7 +33,6 @@ class TRil_tree : public TBidirectional_tree
|
|||||||
int _month;
|
int _month;
|
||||||
TEsercizi_contabili _es;
|
TEsercizi_contabili _es;
|
||||||
|
|
||||||
|
|
||||||
protected:
|
protected:
|
||||||
|
|
||||||
public:
|
public:
|
||||||
@ -319,7 +318,7 @@ public:
|
|||||||
|
|
||||||
const TString & TRilevamento_cons_msk::proponi_costo(const TMask& msk)
|
const TString & TRilevamento_cons_msk::proponi_costo(const TMask& msk)
|
||||||
{
|
{
|
||||||
const TString8 codlist = msk.get(S_CODLIST);
|
const TString& codlist = msk.get(S_CODLIST);
|
||||||
const char tipo = msk.get(S_RISOATT)[0];
|
const char tipo = msk.get(S_RISOATT)[0];
|
||||||
TString80 codice;
|
TString80 codice;
|
||||||
switch(tipo)
|
switch(tipo)
|
||||||
@ -1013,6 +1012,7 @@ void TRilevamento_cons_msk::riempi_nuova_riga(int r)
|
|||||||
riga.add(proponi_costo(riga), sheet.cid2index(S_COSTO));
|
riga.add(proponi_costo(riga), sheet.cid2index(S_COSTO));
|
||||||
sheet.force_update(r);
|
sheet.force_update(r);
|
||||||
}
|
}
|
||||||
|
|
||||||
//AZZERA_RIGA: metodo che azzera il valore unitario della riga selezionata
|
//AZZERA_RIGA: metodo che azzera il valore unitario della riga selezionata
|
||||||
void TRilevamento_cons_msk::azzera_riga(TSheet_field& sheet)
|
void TRilevamento_cons_msk::azzera_riga(TSheet_field& sheet)
|
||||||
{
|
{
|
||||||
@ -1033,7 +1033,7 @@ void TRilevamento_cons_msk::azzera_tutto(TSheet_field& sheet)
|
|||||||
|
|
||||||
//REGISTRA: metodo che salva nella tabella di modulo le
|
//REGISTRA: metodo che salva nella tabella di modulo le
|
||||||
//righe dello sheet che hanno valore > 0, ed elimina quelle che hanno
|
//righe dello sheet che hanno valore > 0, ed elimina quelle che hanno
|
||||||
//vaoler pari a zero, e poi ricarica lo sheet
|
//valore pari a zero, e poi ricarica lo sheet
|
||||||
|
|
||||||
void TRilevamento_cons_msk::registra()
|
void TRilevamento_cons_msk::registra()
|
||||||
{
|
{
|
||||||
@ -1209,7 +1209,7 @@ bool TRilevamento_cons_msk::on_field_event(TOperable_field& f, TField_event e, l
|
|||||||
{
|
{
|
||||||
const short dlg = f.dlg();
|
const short dlg = f.dlg();
|
||||||
|
|
||||||
if (f.dlg() == _scms_lid)
|
if (dlg == _scms_lid)
|
||||||
{
|
{
|
||||||
if (e == fe_init || e == fe_modify)
|
if (e == fe_init || e == fe_modify)
|
||||||
{
|
{
|
||||||
@ -1480,6 +1480,7 @@ TRilevamento_cons_msk::TRilevamento_cons_msk()
|
|||||||
set_universal_handler(id + 100);
|
set_universal_handler(id + 100);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
for (short id = S_CDC12 + 100; id >= S_CDC1 + 100; id--)
|
for (short id = S_CDC12 + 100; id >= S_CDC1 + 100; id--)
|
||||||
{
|
{
|
||||||
const int pos = sm.id2pos(id);
|
const int pos = sm.id2pos(id);
|
||||||
|
@ -656,22 +656,6 @@ bool TImporta_rilore_msk::on_field_event(TOperable_field& f, TField_event e, lon
|
|||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
TImporta_rilore_msk::TImporta_rilore_msk()
|
|
||||||
: TAutomask("ci2300a")
|
|
||||||
{
|
|
||||||
}
|
|
||||||
|
|
||||||
////////////////////////////////////////////
|
|
||||||
//// CLASSE TRilevamento_imp_app ////
|
|
||||||
////////////////////////////////////////////
|
|
||||||
|
|
||||||
//classe TRilevamento_imp_app
|
|
||||||
class TImporta_rilore__app : public TSkeleton_application
|
|
||||||
{
|
|
||||||
public:
|
|
||||||
virtual void main_loop();
|
|
||||||
};
|
|
||||||
|
|
||||||
static bool scan_rss(const TRelation & rel, void *pJolly)
|
static bool scan_rss(const TRelation & rel, void *pJolly)
|
||||||
{
|
{
|
||||||
TImporta_rilore_msk & mask = *((TImporta_rilore_msk *)pJolly);
|
TImporta_rilore_msk & mask = *((TImporta_rilore_msk *)pJolly);
|
||||||
@ -682,11 +666,11 @@ static bool scan_rss(const TRelation & rel, void *pJolly)
|
|||||||
if (matricola.full())
|
if (matricola.full())
|
||||||
{
|
{
|
||||||
const TString16 codice = rel.curr().get("CODTAB");
|
const TString16 codice = rel.curr().get("CODTAB");
|
||||||
|
|
||||||
mask.matricole().add(matricola, codice);
|
mask.matricole().add(matricola, codice);
|
||||||
}
|
}
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
static bool scan_ore(const TRelation & rel, void *pJolly)
|
static bool scan_ore(const TRelation & rel, void *pJolly)
|
||||||
{
|
{
|
||||||
TImporta_rilore_msk & mask = *((TImporta_rilore_msk *)pJolly);
|
TImporta_rilore_msk & mask = *((TImporta_rilore_msk *)pJolly);
|
||||||
@ -697,23 +681,38 @@ static bool scan_ore(const TRelation & rel, void *pJolly)
|
|||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
void TImporta_rilore__app::main_loop()
|
TImporta_rilore_msk::TImporta_rilore_msk()
|
||||||
|
: TAutomask("ci2300a")
|
||||||
{
|
{
|
||||||
TImporta_rilore_msk msk;
|
|
||||||
TRelation rrss("RSS");
|
TRelation rrss("RSS");
|
||||||
TCursor crss(&rrss);
|
TCursor crss(&rrss);
|
||||||
|
crss.scan(scan_rss, (void *)this);
|
||||||
|
|
||||||
crss.scan(scan_rss, (void *) &msk);
|
|
||||||
TRelation rore("&ORE");
|
TRelation rore("&ORE");
|
||||||
TCursor core(&rore);
|
TCursor core(&rore);
|
||||||
|
core.scan(scan_ore, (void *)this);
|
||||||
|
}
|
||||||
|
|
||||||
core.scan(scan_ore, (void *) &msk);
|
////////////////////////////////////////////
|
||||||
|
//// CLASSE TRilevamento_imp_app ////
|
||||||
|
////////////////////////////////////////////
|
||||||
|
|
||||||
|
//classe TRilevamento_imp_app
|
||||||
|
class TImporta_rilore_app : public TSkeleton_application
|
||||||
|
{
|
||||||
|
public:
|
||||||
|
virtual void main_loop();
|
||||||
|
};
|
||||||
|
|
||||||
|
void TImporta_rilore_app::main_loop()
|
||||||
|
{
|
||||||
|
TImporta_rilore_msk msk;
|
||||||
while (msk.run() != K_QUIT);
|
while (msk.run() != K_QUIT);
|
||||||
}
|
}
|
||||||
|
|
||||||
int ci2300(int argc, char *argv[])
|
int ci2300(int argc, char *argv[])
|
||||||
{
|
{
|
||||||
TImporta_rilore__app a;
|
TImporta_rilore_app a;
|
||||||
a.run(argc, argv, TR("Importazione Ore"));
|
a.run(argc, argv, TR("Importazione Ore"));
|
||||||
return TRUE;
|
return 0;
|
||||||
}
|
}
|
1465
ci/ci2400.cpp
Normal file
1465
ci/ci2400.cpp
Normal file
File diff suppressed because it is too large
Load Diff
65
ci/ci2400a.h
Normal file
65
ci/ci2400a.h
Normal file
@ -0,0 +1,65 @@
|
|||||||
|
//Campi maschera ci2400a
|
||||||
|
#define F_ANNO 301
|
||||||
|
#define F_MESE 302
|
||||||
|
#define F_GIORNO 303
|
||||||
|
#define F_TPORA 304
|
||||||
|
#define F_RISOATT 305
|
||||||
|
#define F_CODICE 306
|
||||||
|
#define F_CODRIS 307
|
||||||
|
#define F_DESRIS 308
|
||||||
|
#define F_CODATT 309
|
||||||
|
#define F_DESATT 310
|
||||||
|
#define F_CALENDAR 311
|
||||||
|
|
||||||
|
#define C_MESE 402
|
||||||
|
#define C_GIORNO 403
|
||||||
|
#define C_TPORA 404
|
||||||
|
#define C_RISOATT 405
|
||||||
|
#define C_CODICE 406
|
||||||
|
|
||||||
|
#define F_ANAL 314
|
||||||
|
#define F_CDC1 314
|
||||||
|
#define F_CDC2 315
|
||||||
|
#define F_CDC3 316
|
||||||
|
#define F_CDC4 317
|
||||||
|
#define F_CDC5 318
|
||||||
|
#define F_CDC6 319
|
||||||
|
#define F_CDC7 320
|
||||||
|
#define F_CDC8 321
|
||||||
|
#define F_CDC9 322
|
||||||
|
#define F_CDC10 323
|
||||||
|
#define F_CDC11 324
|
||||||
|
#define F_CDC12 325
|
||||||
|
#define F_SHEET 330
|
||||||
|
|
||||||
|
#define S_DATA 101
|
||||||
|
#define S_RISOATT 102
|
||||||
|
#define S_CODRIS 103
|
||||||
|
#define S_CODATT 203
|
||||||
|
#define S_DESRIS 104
|
||||||
|
#define S_DESATT 204
|
||||||
|
#define S_TPORA 105
|
||||||
|
#define S_QTAORE 106
|
||||||
|
#define S_COSTO 107
|
||||||
|
|
||||||
|
#define S_CDC1 108
|
||||||
|
#define S_CDC2 109
|
||||||
|
#define S_CDC3 110
|
||||||
|
#define S_CDC4 111
|
||||||
|
#define S_CDC5 112
|
||||||
|
#define S_CDC6 113
|
||||||
|
#define S_CDC7 114
|
||||||
|
#define S_CDC8 115
|
||||||
|
#define S_CDC9 116
|
||||||
|
#define S_CDC10 117
|
||||||
|
#define S_CDC11 118
|
||||||
|
#define S_CDC12 119
|
||||||
|
|
||||||
|
#define S_CODIVA 120
|
||||||
|
#define S_CODLIST 121
|
||||||
|
#define S_NOTE 122
|
||||||
|
#define S_CUP 123
|
||||||
|
#define S_CIG 124
|
||||||
|
#define S_STATO 125
|
||||||
|
#define S_ID 126
|
||||||
|
#define S_CMSH 143
|
463
ci/ci2400a.uml
Normal file
463
ci/ci2400a.uml
Normal file
@ -0,0 +1,463 @@
|
|||||||
|
#include "ci2400a.h"
|
||||||
|
|
||||||
|
TOOLBAR "topbar" 0 0 0 2
|
||||||
|
|
||||||
|
BUTTON DLG_FINDREC
|
||||||
|
BEGIN
|
||||||
|
PROMPT 1 1 "Carica"
|
||||||
|
PICTURE TOOL_FINDREC
|
||||||
|
END
|
||||||
|
|
||||||
|
|
||||||
|
BUTTON DLG_SAVEREC 2 2
|
||||||
|
BEGIN
|
||||||
|
PROMPT 2 1 "Salva"
|
||||||
|
PICTURE TOOL_SAVEREC
|
||||||
|
END
|
||||||
|
|
||||||
|
BUTTON DLG_NULL 2 2
|
||||||
|
BEGIN
|
||||||
|
PROMPT 3 1 ""
|
||||||
|
END
|
||||||
|
|
||||||
|
BUTTON DLG_ELABORA 2 2
|
||||||
|
BEGIN
|
||||||
|
PROMPT 4 1 "Contabilizza"
|
||||||
|
PICTURE TOOL_ELABORA
|
||||||
|
END
|
||||||
|
|
||||||
|
#include <helpbar.h>
|
||||||
|
|
||||||
|
ENDPAGE
|
||||||
|
|
||||||
|
PAGE "Consuntivazione ore" 0 2 0 0
|
||||||
|
|
||||||
|
GROUPBOX DLG_NULL 78 8
|
||||||
|
BEGIN
|
||||||
|
PROMPT 1 0 "@bSelezione"
|
||||||
|
END
|
||||||
|
|
||||||
|
NUMBER F_ANNO 4
|
||||||
|
BEGIN
|
||||||
|
PROMPT 2 1 "Anno "
|
||||||
|
FLAGS "A"
|
||||||
|
CHECKTYPE REQUIRED
|
||||||
|
NUM_EXPR #F_ANNO>2000
|
||||||
|
WARNING "Inserire un anno valido"
|
||||||
|
END
|
||||||
|
|
||||||
|
BOOLEAN C_MESE
|
||||||
|
BEGIN
|
||||||
|
PROMPT 16 1 "Mese"
|
||||||
|
END
|
||||||
|
|
||||||
|
LISTBOX F_MESE 2 11
|
||||||
|
BEGIN
|
||||||
|
PROMPT 24 1 ""
|
||||||
|
FLAGS "AM"
|
||||||
|
END
|
||||||
|
|
||||||
|
BOOLEAN C_GIORNO
|
||||||
|
BEGIN
|
||||||
|
PROMPT 41 1 "Giorno"
|
||||||
|
END
|
||||||
|
|
||||||
|
DATE F_GIORNO
|
||||||
|
BEGIN
|
||||||
|
PROMPT 51 1 ""
|
||||||
|
FLAGS "A"
|
||||||
|
END
|
||||||
|
|
||||||
|
BOOLEAN C_TPORA
|
||||||
|
BEGIN
|
||||||
|
PROMPT 66 1 "Ora"
|
||||||
|
END
|
||||||
|
|
||||||
|
STRING F_TPORA 2
|
||||||
|
BEGIN
|
||||||
|
PROMPT 73 1 ""
|
||||||
|
USE &ORE
|
||||||
|
INPUT CODTAB F_TPORA
|
||||||
|
DISPLAY "Codice@16" CODTAB
|
||||||
|
DISPLAY "Descrizione@50" S0
|
||||||
|
OUTPUT F_TPORA CODTAB
|
||||||
|
CHECKTYPE NORMAL
|
||||||
|
END
|
||||||
|
|
||||||
|
BOOLEAN C_RISOATT
|
||||||
|
BEGIN
|
||||||
|
PROMPT 2 2 ""
|
||||||
|
END
|
||||||
|
|
||||||
|
LISTBOX F_RISOATT 1 7
|
||||||
|
BEGIN
|
||||||
|
PROMPT 5 2 ""
|
||||||
|
ITEM "R|Risorsa"
|
||||||
|
MESSAGE SHOW,2@|HIDE,3@
|
||||||
|
ITEM "A|Attrez."
|
||||||
|
MESSAGE HIDE,2@|SHOW,3@
|
||||||
|
END
|
||||||
|
|
||||||
|
BOOLEAN C_CODICE
|
||||||
|
BEGIN
|
||||||
|
PROMPT 16 2 ""
|
||||||
|
END
|
||||||
|
|
||||||
|
STRING F_CODRIS 16
|
||||||
|
BEGIN
|
||||||
|
PROMPT 19 2 ""
|
||||||
|
USE RSS
|
||||||
|
INPUT CODTAB F_CODRIS
|
||||||
|
DISPLAY "Codice@16" CODTAB
|
||||||
|
DISPLAY "Descrizione@50" S0
|
||||||
|
DISPLAY "IVA@4" S3[1,4]
|
||||||
|
OUTPUT F_CODRIS CODTAB
|
||||||
|
OUTPUT F_DESRIS S0
|
||||||
|
GROUP 2
|
||||||
|
FLAGS "U"
|
||||||
|
CHECKTYPE NORMAL
|
||||||
|
END
|
||||||
|
|
||||||
|
STRING F_DESRIS 50 34
|
||||||
|
BEGIN
|
||||||
|
PROMPT 41 2 ""
|
||||||
|
USE RSS KEY 2
|
||||||
|
INPUT S0 F_DESRIS
|
||||||
|
DISPLAY "Descrizione@50" S0
|
||||||
|
DISPLAY "Codice@16" CODTAB
|
||||||
|
DISPLAY "IVA@4" S3[1,4]
|
||||||
|
COPY OUTPUT F_CODRIS
|
||||||
|
CHECKTYPE SEARCH
|
||||||
|
GROUP 2
|
||||||
|
END
|
||||||
|
|
||||||
|
STRING F_CODATT 16
|
||||||
|
BEGIN
|
||||||
|
PROMPT 19 2 ""
|
||||||
|
USE ATR
|
||||||
|
INPUT CODTAB F_CODATT
|
||||||
|
DISPLAY "Codice@16" CODTAB
|
||||||
|
DISPLAY "Descrizione@50" S0
|
||||||
|
DISPLAY "IVA@4" S3[1,4]
|
||||||
|
OUTPUT F_CODATT CODTAB
|
||||||
|
OUTPUT F_DESATT S0
|
||||||
|
GROUP 3
|
||||||
|
FLAGS "U"
|
||||||
|
CHECKTYPE NORMAL
|
||||||
|
END
|
||||||
|
|
||||||
|
STRING F_DESATT 50 34
|
||||||
|
BEGIN
|
||||||
|
PROMPT 41 2 ""
|
||||||
|
USE ATR KEY 2
|
||||||
|
INPUT S0 F_DESRIS
|
||||||
|
DISPLAY "Descrizione@50" S0
|
||||||
|
DISPLAY "Codice@16" CODTAB
|
||||||
|
DISPLAY "IVA@4" S3[1,4]
|
||||||
|
COPY OUTPUT F_CODATT
|
||||||
|
CHECKTYPE SEARCH
|
||||||
|
GROUP 3
|
||||||
|
END
|
||||||
|
|
||||||
|
CALENDAR F_CALENDAR -1 7
|
||||||
|
BEGIN
|
||||||
|
PROMPT 80 0 ""
|
||||||
|
END
|
||||||
|
|
||||||
|
SPREADSHEET F_SHEET
|
||||||
|
BEGIN
|
||||||
|
PROMPT 0 8 ""
|
||||||
|
ITEM "Data@10"
|
||||||
|
ITEM "R/A"
|
||||||
|
ITEM "Codice@16"
|
||||||
|
ITEM "Descrizione@20"
|
||||||
|
ITEM "Tipo@5"
|
||||||
|
ITEM "Ore@7"
|
||||||
|
ITEM "Prezzo@6"
|
||||||
|
ITEM "CDC1"
|
||||||
|
ITEM "CDC2"
|
||||||
|
ITEM "CDC3"
|
||||||
|
ITEM "CDC4"
|
||||||
|
ITEM "CDC5"
|
||||||
|
ITEM "CDC6"
|
||||||
|
ITEM "CDC7"
|
||||||
|
ITEM "CDC8"
|
||||||
|
ITEM "CDC9"
|
||||||
|
ITEM "CDC10"
|
||||||
|
ITEM "CDC11"
|
||||||
|
ITEM "CDC12"
|
||||||
|
ITEM "IVA"
|
||||||
|
ITEM "List."
|
||||||
|
ITEM "Note@30"
|
||||||
|
ITEM "CUP@15"
|
||||||
|
ITEM "CIG@10"
|
||||||
|
ITEM "Stato"
|
||||||
|
ITEM "ID@8"
|
||||||
|
END
|
||||||
|
|
||||||
|
ENDPAGE
|
||||||
|
|
||||||
|
ENDMASK
|
||||||
|
|
||||||
|
PAGE "Riga consuntivo" -1 -1 78 10
|
||||||
|
|
||||||
|
DATE S_DATA
|
||||||
|
BEGIN
|
||||||
|
PROMPT 1 0 "Data "
|
||||||
|
CHECKTYPE REQUIRED
|
||||||
|
FIELD DADATA
|
||||||
|
END
|
||||||
|
|
||||||
|
LIST S_STATO 1 12
|
||||||
|
BEGIN
|
||||||
|
PROMPT 39 0 "Stato "
|
||||||
|
ITEM "1|Inserita"
|
||||||
|
ITEM "5|Contabiliz."
|
||||||
|
FLAGS "D"
|
||||||
|
END
|
||||||
|
|
||||||
|
NUMBER S_ID 8
|
||||||
|
BEGIN
|
||||||
|
PROMPT 63 0 "ID "
|
||||||
|
FLAGS "D"
|
||||||
|
FIELD ID
|
||||||
|
END
|
||||||
|
|
||||||
|
LISTBOX S_RISOATT 1 7
|
||||||
|
BEGIN
|
||||||
|
PROMPT 1 1 ""
|
||||||
|
ITEM "R|Risorsa"
|
||||||
|
MESSAGE SHOW,1@|HIDE,2@
|
||||||
|
ITEM "A|Attrez."
|
||||||
|
MESSAGE HIDE,1@|SHOW,2@
|
||||||
|
FIELD TIPORA
|
||||||
|
END
|
||||||
|
|
||||||
|
STRING S_CODRIS 16
|
||||||
|
BEGIN
|
||||||
|
PROMPT 18 1 ""
|
||||||
|
COPY USE -F_CODRIS
|
||||||
|
INPUT CODTAB S_CODRIS
|
||||||
|
COPY DISPLAY -F_CODRIS
|
||||||
|
OUTPUT S_CODRIS CODTAB
|
||||||
|
OUTPUT S_DESRIS S0
|
||||||
|
OUTPUT S_CODIVA S3[1,4]
|
||||||
|
CHECKTYPE REQUIRED
|
||||||
|
FLAGS "GU"
|
||||||
|
GROUP 1
|
||||||
|
CHECKTYPE REQUIRED
|
||||||
|
FIELD CODICE
|
||||||
|
END
|
||||||
|
|
||||||
|
STRING S_DESRIS 50 33
|
||||||
|
BEGIN
|
||||||
|
PROMPT 39 1 ""
|
||||||
|
COPY USE -F_DESRIS
|
||||||
|
INPUT S0 S_DESRIS
|
||||||
|
COPY DISPLAY -F_DESRIS
|
||||||
|
COPY OUTPUT S_CODRIS
|
||||||
|
CHECKTYPE NORMAL
|
||||||
|
GROUP 1
|
||||||
|
END
|
||||||
|
|
||||||
|
STRING S_CODATT 16
|
||||||
|
BEGIN
|
||||||
|
PROMPT 18 1 ""
|
||||||
|
COPY USE -F_CODATT
|
||||||
|
INPUT CODTAB S_CODATT
|
||||||
|
COPY DISPLAY -F_CODATT
|
||||||
|
OUTPUT S_CODATT CODTAB
|
||||||
|
OUTPUT S_DESATT S0
|
||||||
|
OUTPUT S_CODIVA S3[1,4]
|
||||||
|
CHECKTYPE REQUIRED
|
||||||
|
FLAGS "GU"
|
||||||
|
GROUP 2
|
||||||
|
FIELD CODICE
|
||||||
|
MESSAGE COPY,S_CODRIS
|
||||||
|
END
|
||||||
|
|
||||||
|
STRING S_DESATT 50 33
|
||||||
|
BEGIN
|
||||||
|
PROMPT 39 1 ""
|
||||||
|
COPY USE -F_DESATT
|
||||||
|
INPUT S0 S_DESATT
|
||||||
|
COPY DISPLAY -F_DESATT
|
||||||
|
COPY OUTPUT S_CODATT
|
||||||
|
CHECKTYPE NORMAL
|
||||||
|
GROUP 2
|
||||||
|
END
|
||||||
|
|
||||||
|
STRING S_TPORA 2
|
||||||
|
BEGIN
|
||||||
|
PROMPT 1 2 "ORE: Tipo "
|
||||||
|
COPY USE -F_TPORA
|
||||||
|
INPUT CODTAB S_TPORA
|
||||||
|
COPY DISPLAY -F_TPORA
|
||||||
|
OUTPUT S_TPORA CODTAB
|
||||||
|
CHECKTYPE REQUIRED
|
||||||
|
FIELD TPORA
|
||||||
|
END
|
||||||
|
|
||||||
|
NUMBER S_QTAORE 7 2
|
||||||
|
BEGIN
|
||||||
|
PROMPT 18 2 "Q.tà "
|
||||||
|
FIELD QTAORE
|
||||||
|
CHECKTYPE REQUIRED
|
||||||
|
END
|
||||||
|
|
||||||
|
NUMBER S_COSTO 6 2
|
||||||
|
BEGIN
|
||||||
|
PROMPT 34 2 "Prezzo "
|
||||||
|
FIELD COSTO
|
||||||
|
END
|
||||||
|
|
||||||
|
STRING S_CODIVA 4
|
||||||
|
BEGIN
|
||||||
|
PROMPT 50 2 "IVA "
|
||||||
|
FLAGS "D"
|
||||||
|
END
|
||||||
|
|
||||||
|
STRING S_CODLIST 4
|
||||||
|
BEGIN
|
||||||
|
PROMPT 61 2 "Listino "
|
||||||
|
FLAGS "DUZ"
|
||||||
|
END
|
||||||
|
|
||||||
|
STRING S_NOTE 50
|
||||||
|
BEGIN
|
||||||
|
PROMPT 1 3 "Note "
|
||||||
|
FIELD NOTE
|
||||||
|
END
|
||||||
|
|
||||||
|
STRING S_CDC1 20
|
||||||
|
BEGIN
|
||||||
|
PROMPT 1 8 "Cdc 1"
|
||||||
|
FLAGS "HB"
|
||||||
|
END
|
||||||
|
|
||||||
|
STRING S_CDC2 20
|
||||||
|
BEGIN
|
||||||
|
PROMPT 1 8 "Cdc 2"
|
||||||
|
FLAGS "HB"
|
||||||
|
END
|
||||||
|
|
||||||
|
STRING S_CDC3 20
|
||||||
|
BEGIN
|
||||||
|
PROMPT 1 8 "Cdc 2"
|
||||||
|
FLAGS "HB"
|
||||||
|
END
|
||||||
|
|
||||||
|
STRING S_CDC4 20
|
||||||
|
BEGIN
|
||||||
|
PROMPT 1 8 "Cdc 2"
|
||||||
|
FLAGS "HB"
|
||||||
|
END
|
||||||
|
|
||||||
|
STRING S_CDC5 20
|
||||||
|
BEGIN
|
||||||
|
PROMPT 1 9 "Cdc 2"
|
||||||
|
FLAGS "HB"
|
||||||
|
END
|
||||||
|
|
||||||
|
STRING S_CDC6 20
|
||||||
|
BEGIN
|
||||||
|
PROMPT 1 9 "Cdc 2"
|
||||||
|
FLAGS "HB"
|
||||||
|
END
|
||||||
|
|
||||||
|
STRING S_CDC7 20
|
||||||
|
BEGIN
|
||||||
|
PROMPT 1 9 "Cdc 2"
|
||||||
|
FLAGS "HB"
|
||||||
|
END
|
||||||
|
|
||||||
|
STRING S_CDC8 20
|
||||||
|
BEGIN
|
||||||
|
PROMPT 1 9 "Cdc 2"
|
||||||
|
FLAGS "HB"
|
||||||
|
END
|
||||||
|
|
||||||
|
STRING S_CDC9 20
|
||||||
|
BEGIN
|
||||||
|
PROMPT 1 10 "Cdc 2"
|
||||||
|
FLAGS "HB"
|
||||||
|
END
|
||||||
|
|
||||||
|
STRING S_CDC10 20
|
||||||
|
BEGIN
|
||||||
|
PROMPT 1 10 "Cdc 2"
|
||||||
|
FLAGS "HB"
|
||||||
|
END
|
||||||
|
|
||||||
|
STRING S_CDC11 20
|
||||||
|
BEGIN
|
||||||
|
PROMPT 1 10 "Cdc 2"
|
||||||
|
FLAGS "HB"
|
||||||
|
END
|
||||||
|
|
||||||
|
STRING S_CDC12 20
|
||||||
|
BEGIN
|
||||||
|
PROMPT 1 10 "Cdc 2"
|
||||||
|
FLAGS "HB"
|
||||||
|
END
|
||||||
|
|
||||||
|
STRING S_CMSH 20
|
||||||
|
BEGIN
|
||||||
|
PROMPT 1 80 "Commessa"
|
||||||
|
FLAGS "H"
|
||||||
|
END
|
||||||
|
|
||||||
|
STRING S_CUP 15
|
||||||
|
BEGIN
|
||||||
|
PROMPT 1 -2 "CUP "
|
||||||
|
USE LF_CFCMS KEY 2 SELECT TIPOCF=="C"
|
||||||
|
JOIN %CUP INTO CODTAB==CUP
|
||||||
|
JOIN LF_CLIFO INTO TIPOCF==TIPOCF CODCF==CODCF
|
||||||
|
INPUT COMMESSA S_CMSH SELECT
|
||||||
|
INPUT CUP S_CUP
|
||||||
|
DISPLAY "Codice CUP@15" CUP
|
||||||
|
DISPLAY "Descrizione@50" %CUP->S0
|
||||||
|
DISPLAY "Codice Cliente" CODCF
|
||||||
|
DISPLAY "Ragione Sociale@50" LF_CLIFO->RAGSOC
|
||||||
|
OUTPUT S_CUP CUP
|
||||||
|
CHECKTYPE NORMAL
|
||||||
|
FIELD CUP
|
||||||
|
END
|
||||||
|
|
||||||
|
STRING S_CIG 10
|
||||||
|
BEGIN
|
||||||
|
PROMPT 1 -1 "CIG "
|
||||||
|
USE LF_CFCMS KEY 3 SELECT TIPOCF=="C"
|
||||||
|
JOIN %CIG INTO CODTAB==CIG
|
||||||
|
JOIN LF_CLIFO INTO TIPOCF==TIPOCF CODCF==CODCF
|
||||||
|
INPUT COMMESSA S_CMSH SELECT
|
||||||
|
INPUT CIG S_CIG
|
||||||
|
DISPLAY "Codice CIG@15" CIG
|
||||||
|
DISPLAY "Descrizione@50" %CIG->S0
|
||||||
|
DISPLAY "Codice Cliente" CODCF
|
||||||
|
DISPLAY "Ragione Sociale@50" LF_CLIFO->RAGSOC
|
||||||
|
OUTPUT S_CIG CIG
|
||||||
|
CHECKTYPE NORMAL
|
||||||
|
FIELD CIG
|
||||||
|
END
|
||||||
|
|
||||||
|
ENDPAGE
|
||||||
|
|
||||||
|
TOOLBAR "" 0 0 0 2
|
||||||
|
|
||||||
|
BUTTON DLG_OK 2 2
|
||||||
|
BEGIN
|
||||||
|
PROMPT 1 1 ""
|
||||||
|
END
|
||||||
|
|
||||||
|
BUTTON DLG_DELREC 2 2
|
||||||
|
BEGIN
|
||||||
|
PROMPT 2 1 ""
|
||||||
|
PICTURE TOOL_DELREC
|
||||||
|
END
|
||||||
|
|
||||||
|
#include <helpbar.h>
|
||||||
|
|
||||||
|
ENDPAGE
|
||||||
|
|
||||||
|
ENDMASK
|
28
ci/cilib.cpp
28
ci/cilib.cpp
@ -297,10 +297,11 @@ TField_window* TAlmanac_field::create_window(int x, int y, int dx, int dy, WINDO
|
|||||||
|
|
||||||
void TAlmanac_field::create(short id, const RCT& rect, WINDOW parent)
|
void TAlmanac_field::create(short id, const RCT& rect, WINDOW parent)
|
||||||
{
|
{
|
||||||
|
const int cols = mask().columns();
|
||||||
int x = rect.left/CHARX, y = rect.top/ROWY;
|
int x = rect.left/CHARX, y = rect.top/ROWY;
|
||||||
int h = (rect.bottom - rect.top)/ROWY, w = (rect.right - rect.left)/CHARX;
|
int h = (rect.bottom - rect.top)/ROWY, w = (rect.right - rect.left)/CHARX;
|
||||||
if (x+w > 80)
|
if (x+w > 80)
|
||||||
x = x + w - mask().columns() - 1;
|
x = x + w - cols - 1;
|
||||||
TWindowed_field::create(id, x, y, w, h, parent);
|
TWindowed_field::create(id, x, y, w, h, parent);
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -547,9 +548,8 @@ const TString& TRisoatt_key::giorno() const
|
|||||||
|
|
||||||
const TString& TRisoatt_key::data() const
|
const TString& TRisoatt_key::data() const
|
||||||
{
|
{
|
||||||
TDate d(mid(21, 8));
|
const TDate d(mid(21, 8));
|
||||||
TString & str = get_tmp_string(12);
|
TString & str = get_tmp_string(12);
|
||||||
|
|
||||||
str = d.string(ANSI);
|
str = d.string(ANSI);
|
||||||
return str;
|
return str;
|
||||||
}
|
}
|
||||||
@ -557,25 +557,21 @@ const TString& TRisoatt_key::data() const
|
|||||||
//TPORA: metodo che restituisce il tipo dell'ora a cui fa riferimento la risorsa o l'attrezzatura
|
//TPORA: metodo che restituisce il tipo dell'ora a cui fa riferimento la risorsa o l'attrezzatura
|
||||||
const TString& TRisoatt_key::tpora() const
|
const TString& TRisoatt_key::tpora() const
|
||||||
{
|
{
|
||||||
return right(2);
|
return mid(29, 2);
|
||||||
}
|
}
|
||||||
|
|
||||||
TRisoatt_key::TRisoatt_key(const char* codlist, const char risoatt, const char* codice, const int anno, const char* mese, const char* giorno, const char* tpora)
|
TRisoatt_key::TRisoatt_key(const char* codlist, const char risoatt, const char* codice, const int anno, const char* mese, const char* giorno, const char* tpora)
|
||||||
{
|
{
|
||||||
TString16 lis = codlist; lis.left_just(4);
|
TString4 lis = codlist; lis.left_just(4);
|
||||||
TString16 cod = codice; cod.left_just(16);
|
TString16 cod = codice; cod.left_just(16);
|
||||||
|
cut(0) << lis << risoatt << cod << anno << mese << giorno << tpora;
|
||||||
TString chiave; chiave << lis << risoatt << cod << anno << mese << giorno << tpora;
|
|
||||||
set(chiave);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
TRisoatt_key::TRisoatt_key(const char* codlist, const char risoatt, const char* codice, const TDate & date, const char* tpora)
|
TRisoatt_key::TRisoatt_key(const char* codlist, const char risoatt, const char* codice, const TDate & date, const char* tpora)
|
||||||
{
|
{
|
||||||
TString16 lis = codlist; lis.lpad(4, '0');
|
TString4 lis = codlist; lis.lpad(4, '0');
|
||||||
TString16 cod = codice; cod.left_just(16);
|
TString16 cod = codice; cod.left_just(16);
|
||||||
|
cut(0) << lis << risoatt << cod << date.string(ANSI) << tpora;
|
||||||
TString chiave; chiave << lis << risoatt << cod << date.string(ANSI) << tpora;
|
|
||||||
set(chiave);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
TRisoatt_key::TRisoatt_key(const char* roakey)
|
TRisoatt_key::TRisoatt_key(const char* roakey)
|
||||||
@ -844,8 +840,12 @@ TRilevamento_ore::TRilevamento_ore() : TRectype(LF_RILORE)
|
|||||||
{ zero(); }
|
{ zero(); }
|
||||||
|
|
||||||
|
|
||||||
const long date2ndoc(const TDate& data)
|
long date2ndoc(const TDate& data)
|
||||||
{ return data.month() * 100 + data.day(); }
|
{
|
||||||
|
const long ndoc = data.month() * 100 + data.day();
|
||||||
|
CHECKD(ndoc > 0, "NDOC non valido ", ndoc);
|
||||||
|
return ndoc;
|
||||||
|
}
|
||||||
|
|
||||||
///////////////////////////
|
///////////////////////////
|
||||||
//// TDoc_cache ////
|
//// TDoc_cache ////
|
||||||
|
@ -249,7 +249,7 @@ public:
|
|||||||
//// TDoc_cache ////
|
//// TDoc_cache ////
|
||||||
///////////////////////////
|
///////////////////////////
|
||||||
|
|
||||||
const long date2ndoc(const TDate& data);
|
long date2ndoc(const TDate& data);
|
||||||
|
|
||||||
//classe TDoc_cache
|
//classe TDoc_cache
|
||||||
class TDoc_cache : public TCache
|
class TDoc_cache : public TCache
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
[CIMENU_001]
|
[CIMENU_001]
|
||||||
Caption = "Contabilita' Industriale"
|
Caption = "Contabilità Industriale"
|
||||||
Picture = <ve01>
|
Picture = <ve01>
|
||||||
Module = 8
|
Module = 8
|
||||||
Flags = "F"
|
Flags = "F"
|
||||||
@ -9,7 +9,7 @@ Item_03 = "Immissione documenti", "ci0 -3", "F"
|
|||||||
Item_04 = "Stampa riepiloghi", "ci1 -1", "F"
|
Item_04 = "Stampa riepiloghi", "ci1 -1", "F"
|
||||||
|
|
||||||
[CIMENU_002]
|
[CIMENU_002]
|
||||||
Caption = "Parametri Contabilita' Industriale"
|
Caption = "Parametri Contabilità Industriale"
|
||||||
Picture = <cg01>
|
Picture = <cg01>
|
||||||
Module = 8
|
Module = 8
|
||||||
Flags = "F"
|
Flags = "F"
|
||||||
@ -27,7 +27,8 @@ Item_04 = "Gestione Disponibilit
|
|||||||
Item_05 = "Gestione Predefiniti", "ci0 -5", "F"
|
Item_05 = "Gestione Predefiniti", "ci0 -5", "F"
|
||||||
Item_06 = "Rilevazione ore preventivo", "ci2 -0", "F"
|
Item_06 = "Rilevazione ore preventivo", "ci2 -0", "F"
|
||||||
Item_07 = "Rilevazione ore consuntivo", "ci2 -1", "F"
|
Item_07 = "Rilevazione ore consuntivo", "ci2 -1", "F"
|
||||||
Item_08 = "Stampe", [CIMENU_004]
|
Item_08 = "Consuntivazione ore", "ci2 -3", "F"
|
||||||
|
Item_09 = "Stampe", [CIMENU_004]
|
||||||
|
|
||||||
[CIMENU_004]
|
[CIMENU_004]
|
||||||
Caption = "Stampe Rilevazione Ore"
|
Caption = "Stampe Rilevazione Ore"
|
||||||
|
@ -1,3 +1,3 @@
|
|||||||
125
|
125
|
||||||
0
|
0
|
||||||
$rilore|3882|3890|164|0|Rilevamento Ore|||
|
$rilore|0|0|214|0|Rilevamento Ore|||
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
125
|
125
|
||||||
21
|
22
|
||||||
TIPO|1|1|0|<D>efault <P>reventivo <C>onsuntivo
|
TIPO|1|1|0|<D>efault <P>reventivo <C>onsuntivo
|
||||||
ID|3|8|0|Id del record
|
ID|3|8|0|Id del record
|
||||||
TIPORA|1|1|0|<R>isorsa <A>ttrezzatura
|
TIPORA|1|1|0|<R>isorsa <A>ttrezzatura
|
||||||
@ -21,6 +21,7 @@ IDRIGA|3|6|0|Chiave doc -IDRIGA
|
|||||||
CUP|1|15|0|Codice Unico di Progetto
|
CUP|1|15|0|Codice Unico di Progetto
|
||||||
CIG|1|10|0|Codice Identificativo di Gara
|
CIG|1|10|0|Codice Identificativo di Gara
|
||||||
RIMBORSO|8|1|0|Rimborso
|
RIMBORSO|8|1|0|Rimborso
|
||||||
|
NOTE|1|50|0|Note
|
||||||
5
|
5
|
||||||
TIPO+ID|
|
TIPO+ID|
|
||||||
TIPO+DADATA+TIPORA+CODICE+TPORA+CODCOSTO+CODCMS+CODFASE|X
|
TIPO+DADATA+TIPORA+CODICE+TPORA+CODCOSTO+CODCMS+CODFASE|X
|
||||||
|
@ -22,5 +22,6 @@
|
|||||||
#define RILORE_CUP "CUP"
|
#define RILORE_CUP "CUP"
|
||||||
#define RILORE_CIG "CIG"
|
#define RILORE_CIG "CIG"
|
||||||
#define RILORE_RIMBORSO "RIMBORSO"
|
#define RILORE_RIMBORSO "RIMBORSO"
|
||||||
|
#define RILORE_NOTE "NOTE"
|
||||||
|
|
||||||
#endif
|
#endif
|
||||||
|
Loading…
x
Reference in New Issue
Block a user