Aggiornamento alla 11.0 delle personalizzazioni

git-svn-id: svn://10.65.10.50/branches/R_10_00@22752 c028cbd2-c16b-5b4b-a496-9718f37d4682
This commit is contained in:
guy 2012-10-26 09:09:39 +00:00
parent a9c6b587bc
commit fc22ece6d4
7 changed files with 43 additions and 49 deletions

View File

@ -12,7 +12,6 @@ int main(int argc,char** argv)
case 2 : pd0610300(argc, argv); break; // Modifica condizioni di pagamento SRM
default: pd0610100(argc, argv); break; // Tabella Clienti/Articoli per SRM
}
exit(0);
return 0;
}

View File

@ -49,7 +49,7 @@ TObject* TOrdf_cache::key2obj(const char* key)
TDocumento* doc = NULL;
TToken_string tmp(key);
if(tmp.items() == 1)
if (tmp.items() == 1)
{
const long codcf = tmp.get_long(0);
@ -86,27 +86,22 @@ TDocumento& TOrdf_cache::doc(const TDoc_key& kdoc)
//DOC: restituisce un puntatore ad un documento identificato dal codcf
TDocumento& TOrdf_cache::doc(const long codcf)
{
TString16 key;
key << codcf;
TString8 key; key << codcf;
return *(TDocumento*)objptr(codcf);
}
//metodo costruttore di una cache di 20 elementi
TOrdf_cache::TOrdf_cache(const char* from_tipodoc, const TDate& datadoc) : TCache()
TOrdf_cache::TOrdf_cache(const char* cod_elab, const TDate& datadoc) : TCache()
{
TToken_string key;
key.add("TIP");
key.add(from_tipodoc);
TString80 cod_elab = cache().get(LF_TABCOM, key, "S3"); cod_elab.mid(4,8); cod_elab.strip(" ");
const TRectype& eld = cache().get("%ELD", cod_elab);
key.cut(0);
key.add("ELD");
key.add(cod_elab);
const TRectype& eld = cache().get(LF_TABCOM, key);
_codnum = eld.get("S6");
_tipodoc = eld.get("S8");
_stato = eld.get("S9");
if (_codnum.blank())
error_box(FR("Manca il codice numerazione sull'elaborazione '%s'"), cod_elab);
_anno = datadoc.year();
_data = datadoc;
}
@ -122,8 +117,8 @@ private:
TFilename _ini_name;
protected:
virtual bool check_autorization() const {return false;}
virtual const char * extra_modules() const {return "cg";}
virtual bool check_autorization() const { return false; }
virtual const char* extra_modules() const {return "cg";}
virtual void main_loop();
@ -133,11 +128,11 @@ protected:
void ordini_fornitore(const TDocumento& ordc, const int nriga, TDocumento& ordf);
void aggiorna_ordf(const TDocumento& ordc, const int nriga, const TDoc_key& adoc, TOrdf_cache& ca, bool first);
TDoc_key * crea_ordf(const TDocumento& ordc, const long nriga, const long codfor, TOrdf_cache& ca, bool first);
void crea_ordf(const TDocumento& ordc, const long nriga, const long codfor, TOrdf_cache& ca, bool first);
void elimina_ordf(const TDoc_key& adoc, TOrdf_cache& ca);
void elimina_righe(const TDocumento& ordc, TOrdf_cache& ca);
void elabora_ordini_cliente();
void elabora_ordini();
public:
bool load_ini(bool check);
@ -311,7 +306,7 @@ void TCrea_ordini_srm_app::aggiorna_ordf(const TDocumento& ordc, const int nriga
}
//CREA_ORDF: creo un nuovo ordine cliente
TDoc_key * TCrea_ordini_srm_app::crea_ordf(const TDocumento& ordc, const long nriga, const long codfor, TOrdf_cache& ca, bool first)
void TCrea_ordini_srm_app::crea_ordf(const TDocumento& ordc, const long nriga, const long codfor, TOrdf_cache& ca, bool first)
{
TDoc_key kordf;
TDoc_key kdadoc(ordc.get_int(DOC_ANNO), ordc.get(DOC_CODNUM), ordc.get_long(DOC_NDOC), ordc.get_char(DOC_PROVV));
@ -381,7 +376,6 @@ TDoc_key * TCrea_ordini_srm_app::crea_ordf(const TDocumento& ordc, const long nr
ordf.put(DOC_CODCONT, codcont);
}
ordini_fornitore(ordc, nriga, ordf);
return new TDoc_key(ordf.get_int(DOC_ANNO), ordf.get(DOC_CODNUM), ordf.get_long(DOC_NDOC), ordf.get_char(DOC_PROVV));
}
//ELIMINA_ORDF: aggiorno l'ordine fornitore che esiste già in base alle modifiche fatte sull'ordine cliente attuale
@ -438,31 +432,30 @@ void TCrea_ordini_srm_app::elimina_righe(const TDocumento& ordc, TOrdf_cache& ca
}
//ELABORA_ORDINI_CLIENTE: scorro il file ini e aggiungo alla tabella dei listini le righe mancanti
void TCrea_ordini_srm_app::elabora_ordini_cliente()
void TCrea_ordini_srm_app::elabora_ordini()
{
TString4 para; para.format("%d", LF_DOC);
TConfig ini(_ini_name, para);
const char provv = ini.get_char(DOC_PROVV, para);
const int anno = ini.get_int(DOC_ANNO, para);
const TString& codnum = ini.get(DOC_CODNUM, para);
const TString4 codnum = ini.get(DOC_CODNUM, para);
const long ndoc = ini.get_long(DOC_NDOC, para);
const bool delete_docs = ini.get(DOC_NOTE, para) == "DELETING";
const TString8 cod_elab = ini.get("Action", "Transaction");
TDoc_key dadoc(anno, codnum, ndoc, provv);
TDocumento ordc(provv, anno, codnum, ndoc);
TOrdf_cache ca(ordc.get(DOC_TIPODOC), ordc.get_date(DOC_DATADOC));
TOrdf_cache ca(cod_elab, ordc.get_date(DOC_DATADOC));
//scorro le righe documento, fermandomi quando la set_paragraph fallisce
//dal momento che non so a priori quante sono le righe del documento
for(int i = 1; i <= ordc.rows(); i++)
{
TRiga_documento& rordc = ordc[i];
const long codfor1 = rordc.get_long(RDOC_CODAGG1); //da prendere dalla riga
const long codfor2 = rordc.get_long(RDOC_CODAGG2); //da prendere dalla riga
// const int idrigac = rordc.get_int(RDOC_IDRIGA);
const TRiga_documento& rordc = ordc[i];
const long codfor1 = rordc.get_long(RDOC_CODAGG1); //da prendere dalla riga
if (codfor1 > 0)
{
TDoc_key ordf;
@ -474,9 +467,11 @@ void TCrea_ordini_srm_app::elabora_ordini_cliente()
aggiorna_ordf(ordc, i, ordf, ca, true);
}
else
TDoc_key * ordf = crea_ordf(ordc, i, codfor1, ca, true);
crea_ordf(ordc, i, codfor1, ca, true);
}
if (codfor2 > 0)
const long codfor2 = rordc.get_long(RDOC_CODAGG2); //da prendere dalla riga
if (codfor2 > 0)
{
TDoc_key ordf;
if (cerca_orf(dadoc, 0, codfor2, ordf))
@ -487,7 +482,7 @@ void TCrea_ordini_srm_app::elabora_ordini_cliente()
aggiorna_ordf(ordc, i, ordf, ca, false);
}
else
TDoc_key * ordf = crea_ordf(ordc, i, codfor2, ca, false);
crea_ordf(ordc, i, codfor2, ca, false);
}
}
@ -533,7 +528,7 @@ void TCrea_ordini_srm_app::main_loop() //definizione della member function main_
// mostra un messaggio di errore se non riesce ad aprire il file richiesto
if (load_ini(chk_doc))
{
elabora_ordini_cliente();
elabora_ordini();
message_box(TR("Creazione ordini fornitore completata"));
}
else

View File

@ -1,7 +1,6 @@
#include <xvt.h>
#include "pd5317.h"
#include "pd5317100.h"
int main(int argc, char** argv)
{

View File

@ -11,6 +11,5 @@ int main(int argc, char** argv)
default:
pd6030100(argc, argv); break; //importazione clienti Press Color
}
exit(0);
return 0;
}

View File

@ -22,13 +22,10 @@ bool TMaskpd60301::on_field_event(TOperable_field& o, TField_event e, long jolly
class TStampaClientipd6030 : public TSkeleton_application
{
virtual bool check_autorization() const {return false;}
virtual const char * extra_modules() const {return "cg";}
protected:
virtual bool check_autorization() const { return false; }
virtual const char* extra_modules() const {return "cg";}
virtual void main_loop();
public:
};
void TStampaClientipd6030::main_loop()
@ -71,6 +68,6 @@ void TStampaClientipd6030::main_loop()
int pd6030100(int argc, char* argv[])
{
TStampaClientipd6030 a;
a.run(argc, argv, "Stampa Clienti PressColor");
a.run(argc, argv, TR("Stampa Clienti PressColor"));
return 0;
}

View File

@ -433,7 +433,7 @@ TImporto TEC_array::importo(const TPartita& game, const TRectype& pag, bool valu
if (!valuta && fat_val) // Se voglio gli abbuoni in lire ma la fattura non lo e'
{
const TValuta val(sum); // Leggo il cambio dalla riga di partita
val.val2lit(abb); // Converto in lire gli abbuoni
val.val2eur(abb); // Converto in Euro gli abbuoni
abb += pag.get_real(PAGSCA_DIFFCAM); // Sommo l'eventuale differenza cambio (gia' in lire)
}
imp.valore() += abb; // Sommo il tutto all'importo base (sez e' uguale per tutti i valori)
@ -746,7 +746,7 @@ static int tot_compare(const void* o1, const void* o2)
const THash_object* h1 = *((const THash_object**)o1);
const THash_object* h2 = *((const THash_object**)o2);
return stricmp(h1->key(), h2->key());
return xvt_str_compare_ignoring_case(h1->key(), h2->key());
}
word TEC_form::ordina_totali_per_valuta(THash_object* tot[MAXTOT])
@ -1964,8 +1964,8 @@ void TStampaEC_application::main_loop()
if (excel)
{
TFilename slk; slk.tempdir(); slk.add("ec.slk");
_form->recordset().save_as(slk, fmt_silk);
TFilename slk; slk.tempdir(); slk.add("ec.xls");
_form->recordset().save_as(slk, fmt_html);
xvt_sys_goto_url(slk, "open");
}

View File

@ -1,15 +1,20 @@
#include "scselmsk.h"
#include "../sc/scselmsk.h"
#include "ps0925100a.h"
TOOLBAR "Toobar" 0 0 0 2
BUTTON DLG_EDIT 10 2
BUTTON DLG_EDIT 2 2
BEGIN
PROMPT 1 1 "~Edit"
PICTURE TOOL_EDIT
PROMPT 1 1 "Excel"
PICTURE TOOL_EXCEL
MESSAGE EXIT,69
END
BUTTON DLG_NULL 2 2
BEGIN
PROMPY 2 1 ""
END
#include <printbar.h>
ENDPAGE
@ -167,12 +172,12 @@ END
BUTTON SC_SELECT 10 1
BEGIN
PROMPT 52 12 "S~elezione"
PROMPT 52 12 "Selezione"
END
BUTTON SC_RESET 10 1
BEGIN
PROMPT 65 13 "A~zzera"
PROMPT 65 12 "Azzera"
END
NUMBER SC_NSEL 4