Patch level : 2.2
Files correlati : Ricompilazione Demo : [ ] Commento : Modlo contabilità industriale agggiunto supporto numerazioni ordinate per data git-svn-id: svn://10.65.10.50/trunk@13002 c028cbd2-c16b-5b4b-a496-9718f37d4682
This commit is contained in:
parent
25c09860a9
commit
5c694c8d6c
@ -11,6 +11,7 @@
|
||||
#include "cilib.h"
|
||||
#include "ci0400.h"
|
||||
#include "ci0400a.h"
|
||||
#include "..\ve\velib.h"
|
||||
|
||||
|
||||
///////////////////////////////////////////////////////////
|
||||
@ -37,6 +38,7 @@ void TImmissioneDocumenti_app::init_tabs()
|
||||
pagenames.add(configfile.get("Descr","Main",item));
|
||||
_filters.add(configfile.get("Filter","Main",item));
|
||||
_mask->activate_almanac(id + item, item, TDate(TODAY));
|
||||
_mask->almanac(item).set_padding(0);
|
||||
item++;
|
||||
}
|
||||
|
||||
@ -56,6 +58,7 @@ void TImmissioneDocumenti_app::init_flags()
|
||||
TString filter;
|
||||
|
||||
filters = _filters.items();
|
||||
_ordered.reset();
|
||||
|
||||
for(int i=0;i<filters;i++)
|
||||
{
|
||||
@ -64,7 +67,12 @@ void TImmissioneDocumenti_app::init_flags()
|
||||
filter << "&&";
|
||||
filter << "(CODNUM==\"" << _filters.row(i) << "\")";
|
||||
|
||||
TRelation relation(LF_DOC);
|
||||
TCodice_numerazione c(_filters.row(i));
|
||||
|
||||
if (!c.dont_test_datadoc())
|
||||
_ordered.set(i);
|
||||
|
||||
TRelation relation(LF_DOC);
|
||||
TSorted_cursor cursor(&relation, "DATADOC", filter);
|
||||
|
||||
items = cursor.items();
|
||||
@ -107,7 +115,12 @@ void TImmissioneDocumenti_app::main_loop()
|
||||
{
|
||||
TDate selday = _mask->last_selected_day();
|
||||
int currpage = _mask->last_selected_page();
|
||||
_mask->open_inner_sheet(selday,_filters.row(currpage));
|
||||
TDate last_datadoc(1, 1, selday.year());
|
||||
|
||||
last_datadoc += ((TBit_array&)_flags[currpage]).last_one();
|
||||
|
||||
const bool can_insert = (selday >= last_datadoc) || !ordered(currpage);
|
||||
_mask->open_inner_sheet(selday,_filters.row(currpage), can_insert);
|
||||
}
|
||||
}
|
||||
|
||||
@ -134,7 +147,7 @@ bool TImmissioneDocumenti_app::has_documents(int currpage, TDate& day)
|
||||
|
||||
// Routines Proprietarie
|
||||
|
||||
void TImmissioneDocumenti_mask::open_inner_sheet(TDate date, TString doctype)
|
||||
void TImmissioneDocumenti_mask::open_inner_sheet(TDate date, TString doctype, bool can_insert)
|
||||
{
|
||||
int exitval;
|
||||
|
||||
@ -152,7 +165,7 @@ void TImmissioneDocumenti_mask::open_inner_sheet(TDate date, TString doctype)
|
||||
"ANNO|CODNUM|TIPODOC|NUMDOCRIF|STATO|DATADOCRIF|NDOC|20->RAGSOC",
|
||||
TR("Selezione documenti"),
|
||||
HR("Anno|Num.|Tipo|Docum.Rif.|Stato|Data@10|Documento|Ragione Sociale@50"),
|
||||
0x02|0x04);
|
||||
can_insert ? 0x02|0x04 : 0x04);
|
||||
|
||||
exitval = sheet.run();
|
||||
|
||||
@ -201,7 +214,6 @@ void TImmissioneDocumenti_mask::call_ve0(int exitval, TRelation& relation, TDate
|
||||
break;
|
||||
}
|
||||
|
||||
configfile.set("Mode", "A", "Transaction");
|
||||
configfile.set("PROVV", "D", "33");
|
||||
configfile.set("ANNO", last_selected_day().year(), "33");
|
||||
configfile.set("CODNUM", doctype, "33");
|
||||
|
@ -16,7 +16,7 @@ public:
|
||||
|
||||
public:
|
||||
// apertura del foglio interno di gestione dei documenti
|
||||
void open_inner_sheet(TDate date, TString doctype);
|
||||
void open_inner_sheet(TDate date, TString doctype, bool can_insert);
|
||||
|
||||
private:
|
||||
// chiamata del programma ve0
|
||||
@ -40,6 +40,7 @@ private:
|
||||
|
||||
TString_array _filters; // filtri tipodoc per ogni tab
|
||||
TArray _flags; // array di TBit_array. Ognuno di essi è lungo 366 e rappresenta i flag di presenza documenti per ogni giorno dell'anno. Ogni page della maschera ha bisogno di un bitarray diverso
|
||||
TBit_array _ordered;
|
||||
|
||||
TDate _newyearsday; // capodanno dell'anno corrente, per uso interno
|
||||
int _year; // anno corrente
|
||||
@ -58,6 +59,7 @@ public:
|
||||
void change_year(int newyear, bool init_flg = true); // passata come funzione alla maschera
|
||||
|
||||
public:
|
||||
bool ordered(byte p) { return _ordered[p]; }
|
||||
TImmissioneDocumenti_app() { change_year(TDate(TODAY).year(), false); }
|
||||
virtual ~TImmissioneDocumenti_app() {}
|
||||
};
|
||||
|
@ -207,7 +207,7 @@ void TAlmanac_window::update()
|
||||
xvt_dwin_draw_text(win(), rct_l + pad + 2, fh + rct_t + pad + 2, str, -1);
|
||||
}
|
||||
|
||||
cdate--;
|
||||
--cdate;
|
||||
|
||||
do
|
||||
{
|
||||
|
@ -145,15 +145,15 @@ class TAlmanac_mask : public TAutomask
|
||||
|
||||
// @access Protected Member
|
||||
protected:
|
||||
// shortcut per l'accesso all'almanacco della pagina corrente
|
||||
TAlmanac_field & almanac(byte page) const { return (TAlmanac_field &) fld(_almanacs[page]);}
|
||||
// shortcut per l'accesso all'almanacco della pagina corrente
|
||||
TAlmanac_field & curr_almanac() const { return almanac(curr_page());}
|
||||
// override da TAutomask
|
||||
virtual bool on_field_event(TOperable_field& o, TField_event e, long jolly);
|
||||
|
||||
// @access Public Member
|
||||
public:
|
||||
// shortcut per l'accesso all'almanacco della pagina corrente
|
||||
TAlmanac_field & almanac(byte page) const { return (TAlmanac_field &) fld(_almanacs[page]);}
|
||||
// shortcut per l'accesso all'almanacco della pagina corrente
|
||||
TAlmanac_field & curr_almanac() const { return almanac(curr_page());}
|
||||
// override da TAutomask
|
||||
virtual TMask_field* parse_field(TScanner& scanner);
|
||||
// @cmember Gestione calendari: Attiva l'almanacco sulla pagina specificata per la data specificata
|
||||
|
@ -82,8 +82,8 @@ BSC32=bscmake.exe
|
||||
# ADD BSC32 /nologo
|
||||
LINK32=link.exe
|
||||
# ADD BASE LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:windows /debug /machine:I386 /pdbtype:sept
|
||||
# ADD LINK32 version.lib wsock32.lib kernel32.lib gdi32.lib user32.lib advapi32.lib comdlg32.lib shell32.lib ole32.lib oleaut32.lib comctl32.lib rpcrt4.lib winspool.lib /nologo /subsystem:windows /incremental:no /debug /machine:I386 /nodefaultlib:"libc.lib" /out:"..\exed\ci0.exe" /pdbtype:sept
|
||||
# SUBTRACT LINK32 /nodefaultlib
|
||||
# ADD LINK32 version.lib wsock32.lib kernel32.lib gdi32.lib user32.lib advapi32.lib comdlg32.lib shell32.lib ole32.lib oleaut32.lib comctl32.lib rpcrt4.lib winspool.lib /nologo /subsystem:windows /debug /machine:I386 /nodefaultlib:"libc.lib" /out:"..\exed\ci0.exe" /pdbtype:sept
|
||||
# SUBTRACT LINK32 /incremental:no /nodefaultlib
|
||||
|
||||
!ENDIF
|
||||
|
||||
@ -106,6 +106,10 @@ SOURCE=..\ci\ci0400.cpp
|
||||
|
||||
SOURCE=..\ci\cilib.cpp
|
||||
# End Source File
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=..\ve\velib01.cpp
|
||||
# End Source File
|
||||
# End Group
|
||||
# Begin Group "Masks"
|
||||
|
||||
@ -119,7 +123,7 @@ SOURCE=..\ci\ci0400a.uml
|
||||
!ELSEIF "$(CFG)" == "ci0 - Win32 Debug"
|
||||
|
||||
# Begin Custom Build
|
||||
TargetDir=\U\brugno\R_02_02\exed
|
||||
TargetDir=\u\R_02_02\exed
|
||||
InputPath=..\ci\ci0400a.uml
|
||||
InputName=ci0400a
|
||||
|
||||
@ -183,6 +187,23 @@ SOURCE=.\ci0.rc
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=..\ci\ci0400.ini
|
||||
|
||||
!IF "$(CFG)" == "ci0 - Win32 Release"
|
||||
|
||||
!ELSEIF "$(CFG)" == "ci0 - Win32 Debug"
|
||||
|
||||
# Begin Custom Build
|
||||
TargetDir=\u\R_02_02\exed
|
||||
InputPath=..\ci\ci0400.ini
|
||||
InputName=ci0400
|
||||
|
||||
"$(TargetDir)\$(InputName).ini" : $(SOURCE) "$(INTDIR)" "$(OUTDIR)"
|
||||
copy $(InputPath) $(TargetDir)\$(InputName).ini
|
||||
|
||||
# End Custom Build
|
||||
|
||||
!ENDIF
|
||||
|
||||
# End Source File
|
||||
# End Group
|
||||
# End Target
|
||||
|
Loading…
x
Reference in New Issue
Block a user