Patch level : 10.0
Files correlati : ha0 ha3 ha3900a.msk hatbatt.msk Ricompilazione Demo : [ ] Commento : Correzioni varie su gestione attrezzature git-svn-id: svn://10.65.10.50/branches/R_10_00@22587 c028cbd2-c16b-5b4b-a496-9718f37d4682
This commit is contained in:
parent
b267e999d7
commit
077cb844e9
@ -530,8 +530,8 @@ bool THardy_elab_docs::genera_nac(const TMask& mask, TArray& contratti_cliente,
|
|||||||
}
|
}
|
||||||
|
|
||||||
const int anno = mask.get_date(F_ADATA).year();
|
const int anno = mask.get_date(F_ADATA).year();
|
||||||
//solo in caso di elaborazione definitiva si scrivono NAC di tipo D; sennò di tipo P, che sono uccidibili..
|
//solo in caso di elaborazione definitiva si scrivono NAC di tipo D;
|
||||||
//..all'inizio di ogni nuova elaborazione
|
//sennò di tipo P, che sono uccidibili all'inizio di ogni nuova elaborazione
|
||||||
char provv = 'P';
|
char provv = 'P';
|
||||||
if (definitivo)
|
if (definitivo)
|
||||||
provv = 'D';
|
provv = 'D';
|
||||||
|
@ -152,21 +152,17 @@ void TInserimento_storico::elabora(const TMask& mask)
|
|||||||
const long doc_ndoc = rdoc_recset.get(RDOC_NDOC).as_int();
|
const long doc_ndoc = rdoc_recset.get(RDOC_NDOC).as_int();
|
||||||
const TString& codart = rdoc_recset.get(RDOC_CODART).as_string();
|
const TString& codart = rdoc_recset.get(RDOC_CODART).as_string();
|
||||||
const TString& matricola = rdoc_recset.get(RDOC_LIVELLO).as_string();
|
const TString& matricola = rdoc_recset.get(RDOC_LIVELLO).as_string();
|
||||||
TString80 str_s0;
|
|
||||||
str_s0.format("%-5s%s", (const char*)codart, (const char*)matricola);
|
|
||||||
|
|
||||||
TString80 codtab;
|
|
||||||
TModule_table tab_att("&ATT");
|
TModule_table tab_att("&ATT");
|
||||||
tab_att.setkey(2);
|
tab_att.put("CODTAB", matricola);
|
||||||
tab_att.put("S0", str_s0);
|
|
||||||
const int err = tab_att.read();
|
const int err = tab_att.read();
|
||||||
//se l'attrezzatura (intesa come codart+matricola) non esiste -> la deve aggiungere (sara' sicuramente la prima..
|
//se l'attrezzatura (intesa come codart+matricola) non esiste -> la deve aggiungere (sara' sicuramente la prima)...
|
||||||
//..per quanto riguarda il progressivo)
|
//..per quanto riguarda il progressivo)
|
||||||
if (err != NOERR)
|
if (err != NOERR)
|
||||||
{
|
{
|
||||||
codtab = hd_get_next_att_key(codart);
|
TString msg;
|
||||||
tab_att.put("CODTAB", codtab);
|
msg << "Articolo " << codart << " senza matricola sul documento " << doc_codnum << " " << doc_anno << "/" << doc_ndoc;
|
||||||
tab_att.put("S0", str_s0);
|
log.log(1, msg);
|
||||||
|
continue;
|
||||||
}
|
}
|
||||||
//comunque deve scrivere il cliente e la data perchè è un'apertura quindi la macchina è assegnata..
|
//comunque deve scrivere il cliente e la data perchè è un'apertura quindi la macchina è assegnata..
|
||||||
//..al cliente con questo documento
|
//..al cliente con questo documento
|
||||||
@ -193,8 +189,7 @@ void TInserimento_storico::elabora(const TMask& mask)
|
|||||||
query_his << "\nFROM CODTAB=#CODTAB";
|
query_his << "\nFROM CODTAB=#CODTAB";
|
||||||
query_his << "\nTO CODTAB=#CODTAB";
|
query_his << "\nTO CODTAB=#CODTAB";
|
||||||
TISAM_recordset recset_his(query_his);
|
TISAM_recordset recset_his(query_his);
|
||||||
codtab = tab_att.get("CODTAB"); //il codtab va preso se per caso la macchina non fosse nuova (pressoche' impossibile, ma insomma..)
|
recset_his.set_var("#CODTAB", matricola);
|
||||||
recset_his.set_var("#CODTAB", codtab);
|
|
||||||
|
|
||||||
const long recset_his_items = recset_his.items();
|
const long recset_his_items = recset_his.items();
|
||||||
|
|
||||||
@ -239,14 +234,14 @@ void TInserimento_storico::elabora(const TMask& mask)
|
|||||||
n_line_to_update = recset_his_items + 1;
|
n_line_to_update = recset_his_items + 1;
|
||||||
|
|
||||||
//adesso ha il numero di riga da aggiornare e crea il nuovo record
|
//adesso ha il numero di riga da aggiornare e crea il nuovo record
|
||||||
new_codtab.format("%-12s%05d", (const char*)codtab, n_line_to_update);
|
new_codtab.format("%08s%05d", (const char*)matricola, n_line_to_update);
|
||||||
tab_his.put("CODTAB", new_codtab);
|
tab_his.put("CODTAB", new_codtab);
|
||||||
tab_his.write();
|
tab_his.write();
|
||||||
new_codtab.cut(0);
|
new_codtab.cut(0);
|
||||||
}
|
}
|
||||||
|
|
||||||
//rimette il codtab per riposizionarsi sul record corretto
|
//rimette il codtab per riposizionarsi sul record corretto
|
||||||
new_codtab.format("%-12s%05d", (const char*)codtab, n_line_to_update);
|
new_codtab.format("%08s%05d", (const char*)matricola, n_line_to_update);
|
||||||
tab_his.put("CODTAB", new_codtab);
|
tab_his.put("CODTAB", new_codtab);
|
||||||
|
|
||||||
//ed aggiunge tutti i campi
|
//ed aggiunge tutti i campi
|
||||||
@ -282,8 +277,9 @@ void TInserimento_storico::elabora(const TMask& mask)
|
|||||||
if (written == NOERR)
|
if (written == NOERR)
|
||||||
{
|
{
|
||||||
TString msg;
|
TString msg;
|
||||||
msg.format("%4d%1s%4s%1s%7d%2s%12s%2s%-15s%2s%6d", doc_anno, "-", (const char*)doc_codnum, "-", doc_ndoc, "--",
|
msg.format("%4d-%4s/%7d--%s--%s--%6d",
|
||||||
(const char*)codtab, "--", (const char*)matricola, "--", doc_clifo);
|
doc_anno, (const char*)doc_codnum, doc_ndoc,
|
||||||
|
(const char*)new_codtab, (const char*)matricola, doc_clifo);
|
||||||
log.log(0, msg);
|
log.log(0, msg);
|
||||||
}
|
}
|
||||||
} //if (caus==caus_open || ..
|
} //if (caus==caus_open || ..
|
||||||
|
@ -24,7 +24,7 @@ class TCoffee_tree : public TBidirectional_tree
|
|||||||
TString8 _curr_node;
|
TString8 _curr_node;
|
||||||
long _codcf;
|
long _codcf;
|
||||||
long _progressivo;
|
long _progressivo;
|
||||||
TString8 _codart;
|
TString80 _codart;
|
||||||
TString16 _matricola, _cespite;
|
TString16 _matricola, _cespite;
|
||||||
TISAM_recordset _recset;
|
TISAM_recordset _recset;
|
||||||
|
|
||||||
@ -51,11 +51,11 @@ public:
|
|||||||
public:
|
public:
|
||||||
bool set_clifo(long codcf);
|
bool set_clifo(long codcf);
|
||||||
bool select_attr(const TString& codart, const long progressivo);
|
bool select_attr(const TString& codart, const long progressivo);
|
||||||
const long get_codcf() const;
|
const long get_codcf() const { return _codcf; }
|
||||||
const TString& get_codart() const;
|
const TString& get_codart() const { return _codart; }
|
||||||
const long get_progressivo() const;
|
const long get_progressivo() const { return _progressivo; }
|
||||||
const TString& get_matricola() const;
|
const TString& get_matricola() const { return _matricola; }
|
||||||
const TString& get_cespite() const;
|
const TString& get_cespite() const { return _cespite; }
|
||||||
TCoffee_tree() : _codcf(0), _recset("USE &ATT") { set_clifo(0L); }
|
TCoffee_tree() : _codcf(0), _recset("USE &ATT") { set_clifo(0L); }
|
||||||
};
|
};
|
||||||
|
|
||||||
@ -125,8 +125,8 @@ TFieldtypes TCoffee_tree::get_var(const TString& name, TVariant& var) const
|
|||||||
//..che risulta vuota
|
//..che risulta vuota
|
||||||
if (name == "S10")
|
if (name == "S10")
|
||||||
{
|
{
|
||||||
TString8 codart = _recset.get("CODTAB[1,5]").as_string();
|
TString80 codart = _recset.get("S0").as_string();
|
||||||
codart.trim();
|
codart.cut(20);
|
||||||
var = cache().get(LF_ANAMAG, codart, ANAMAG_DESCR);
|
var = cache().get(LF_ANAMAG, codart, ANAMAG_DESCR);
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
@ -135,35 +135,11 @@ TFieldtypes TCoffee_tree::get_var(const TString& name, TVariant& var) const
|
|||||||
return var.type();
|
return var.type();
|
||||||
}
|
}
|
||||||
|
|
||||||
const TString& TCoffee_tree::get_codart() const
|
|
||||||
{
|
|
||||||
return _codart;
|
|
||||||
}
|
|
||||||
|
|
||||||
const long TCoffee_tree::get_progressivo() const
|
|
||||||
{
|
|
||||||
return _progressivo;
|
|
||||||
}
|
|
||||||
|
|
||||||
const TString& TCoffee_tree::get_matricola() const
|
|
||||||
{
|
|
||||||
return _matricola;
|
|
||||||
}
|
|
||||||
|
|
||||||
const TString& TCoffee_tree::get_cespite() const
|
|
||||||
{
|
|
||||||
return _cespite;
|
|
||||||
}
|
|
||||||
|
|
||||||
const long TCoffee_tree::get_codcf() const
|
|
||||||
{
|
|
||||||
return _codcf;
|
|
||||||
}
|
|
||||||
|
|
||||||
bool TCoffee_tree::set_clifo(long codcf)
|
bool TCoffee_tree::set_clifo(long codcf)
|
||||||
{
|
{
|
||||||
|
TWait_cursor hourglass;
|
||||||
_codcf = codcf;
|
_codcf = codcf;
|
||||||
TString query;
|
TString80 query;
|
||||||
query << "USE &ATT\nSELECT I0=" << codcf;
|
query << "USE &ATT\nSELECT I0=" << codcf;
|
||||||
_recset.set(query);
|
_recset.set(query);
|
||||||
return goto_root();
|
return goto_root();
|
||||||
@ -174,18 +150,18 @@ bool TCoffee_tree::select_attr(const TString& codart, const long progressivo)
|
|||||||
bool found = false;
|
bool found = false;
|
||||||
for (bool ok = _recset.move_first(); ok; ok = _recset.move_next())
|
for (bool ok = _recset.move_first(); ok; ok = _recset.move_next())
|
||||||
{
|
{
|
||||||
TString8 curr_codart = _recset.get("CODTAB[1,5]").as_string();
|
TString80 curr_codart = _recset.get("S0[1,20]").as_string();
|
||||||
curr_codart.trim();
|
curr_codart.trim();
|
||||||
if (curr_codart == codart)
|
if (curr_codart == codart)
|
||||||
{
|
{
|
||||||
_codart = codart;
|
_codart = codart;
|
||||||
const long curr_progressivo = _recset.get("CODTAB[6,12]").as_int();
|
const long curr_progressivo = _recset.get("CODTAB").as_int();
|
||||||
if (curr_progressivo == progressivo)
|
if (curr_progressivo == progressivo)
|
||||||
{
|
{
|
||||||
_curr_node.format("%ld", _recset.current_row());
|
_curr_node.format("%ld", _recset.current_row());
|
||||||
found = true;
|
found = true;
|
||||||
_progressivo = progressivo;
|
_progressivo = progressivo;
|
||||||
_matricola = _recset.get("S0[6,20]").as_string();
|
_matricola = _recset.get("S0[21,35]").as_string();
|
||||||
_cespite = _recset.get("S1").as_string();
|
_cespite = _recset.get("S1").as_string();
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
@ -240,6 +216,8 @@ public:
|
|||||||
//metodo che riempie il primo sheet delle attrezzature in base ai filtri su cliente/attrezztura
|
//metodo che riempie il primo sheet delle attrezzature in base ai filtri su cliente/attrezztura
|
||||||
void TGestione_attrezzature_mask::fill_sheet_storico(const TString& codattr)
|
void TGestione_attrezzature_mask::fill_sheet_storico(const TString& codattr)
|
||||||
{
|
{
|
||||||
|
TWait_cursor hourglass;
|
||||||
|
|
||||||
//riempie lo sheet dello storico in base all'attrezzatura scelta nell'albero
|
//riempie lo sheet dello storico in base all'attrezzatura scelta nell'albero
|
||||||
TString query;
|
TString query;
|
||||||
query << "USE &HIS";
|
query << "USE &HIS";
|
||||||
@ -289,7 +267,6 @@ void TGestione_attrezzature_mask::fill_sheet_storico(const TString& codattr)
|
|||||||
sf_righe.sort(sort_by_data);
|
sf_righe.sort(sort_by_data);
|
||||||
sf_righe.show();
|
sf_righe.show();
|
||||||
sf_righe.force_update();
|
sf_righe.force_update();
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
@ -301,7 +278,7 @@ bool TGestione_attrezzature_mask::write()
|
|||||||
if (ct == NULL)
|
if (ct == NULL)
|
||||||
return false;
|
return false;
|
||||||
|
|
||||||
const TString& codart = ct->get_codart();
|
// const TString& codart = ct->get_codart();
|
||||||
const long progressivo = ct->get_progressivo();
|
const long progressivo = ct->get_progressivo();
|
||||||
|
|
||||||
TSheet_field& sf_righe = sfield(F_STORICO);
|
TSheet_field& sf_righe = sfield(F_STORICO);
|
||||||
@ -310,9 +287,6 @@ bool TGestione_attrezzature_mask::write()
|
|||||||
//tabella di modulo con lo storico interventi
|
//tabella di modulo con lo storico interventi
|
||||||
TModule_table his("&HIS");
|
TModule_table his("&HIS");
|
||||||
TRectype& rec_his = his.curr();
|
TRectype& rec_his = his.curr();
|
||||||
//codice articolo + progressivo (prima parte del CODTAB del record di tabmod)
|
|
||||||
TString80 codtab;
|
|
||||||
codtab.format("%-5s%07d", (const char*)codart, progressivo);
|
|
||||||
|
|
||||||
//contatore delle righe che vengono salvate
|
//contatore delle righe che vengono salvate
|
||||||
int righe_tot = 0;
|
int righe_tot = 0;
|
||||||
@ -325,8 +299,8 @@ bool TGestione_attrezzature_mask::write()
|
|||||||
//per prima cosa mette la chiave del record che è così fatta:
|
//per prima cosa mette la chiave del record che è così fatta:
|
||||||
// codart=codtab[1,5] - progressivo=codtab[6,12] - nriga=codtab[31,35]
|
// codart=codtab[1,5] - progressivo=codtab[6,12] - nriga=codtab[31,35]
|
||||||
TString80 curr_codtab;
|
TString80 curr_codtab;
|
||||||
curr_codtab.format("%05d", sf_righe.items() - r);
|
curr_codtab.format("%08ld%05d", progressivo, sf_righe.items() - r);
|
||||||
curr_codtab.insert(codtab);
|
|
||||||
//azzera il record senno' nei campi vuoti ci metterebbe quelli del record precedente
|
//azzera il record senno' nei campi vuoti ci metterebbe quelli del record precedente
|
||||||
//deve azzerare la tabella, senno' perde il codice modulo HA ed il codice tabella HIS
|
//deve azzerare la tabella, senno' perde il codice modulo HA ed il codice tabella HIS
|
||||||
his.zero();
|
his.zero();
|
||||||
@ -354,8 +328,8 @@ bool TGestione_attrezzature_mask::write()
|
|||||||
query << "\nTO CODTAB=#AATTR";
|
query << "\nTO CODTAB=#AATTR";
|
||||||
TISAM_recordset recset(query);
|
TISAM_recordset recset(query);
|
||||||
TString80 daattr, aattr;
|
TString80 daattr, aattr;
|
||||||
daattr.format("%s%05d", (const char*)codtab, righe_tot + 1);
|
daattr.format("%08ld%05d", progressivo, righe_tot + 1);
|
||||||
aattr.format("%s%05d", (const char*)codtab, 99999);
|
aattr.format("%08ld%05d", progressivo, 99999);
|
||||||
recset.set_var("#DAATTR", daattr);
|
recset.set_var("#DAATTR", daattr);
|
||||||
recset.set_var("#AATTR", aattr);
|
recset.set_var("#AATTR", aattr);
|
||||||
//accoppa tutte le righe in esubero dalla tabella &HIS
|
//accoppa tutte le righe in esubero dalla tabella &HIS
|
||||||
@ -422,12 +396,12 @@ bool TGestione_attrezzature_mask::on_field_event(TOperable_field& o, TField_even
|
|||||||
TCoffee_tree* ct = (TCoffee_tree*)tf.tree();
|
TCoffee_tree* ct = (TCoffee_tree*)tf.tree();
|
||||||
if (ct != NULL)
|
if (ct != NULL)
|
||||||
{
|
{
|
||||||
TString80 codattr;
|
|
||||||
ct->get_description(codattr);
|
|
||||||
|
|
||||||
//riempie i campi di intestazione maschera
|
//riempie i campi di intestazione maschera
|
||||||
set(F_CODART, codattr.left(5));
|
TVariant str;
|
||||||
set(F_PROGRESSIVO, codattr.mid(5,7));
|
ct->get_var("S0", str);
|
||||||
|
set(F_CODART, str.as_string().left(20));
|
||||||
|
ct->get_var("CODTAB", str);
|
||||||
|
set(F_PROGRESSIVO, str.as_string());
|
||||||
check_field(F_CODART);
|
check_field(F_CODART);
|
||||||
//chiede di salvare le modifiche al cambio attrezzatura
|
//chiede di salvare le modifiche al cambio attrezzatura
|
||||||
save_if_dirty();
|
save_if_dirty();
|
||||||
@ -437,7 +411,7 @@ bool TGestione_attrezzature_mask::on_field_event(TOperable_field& o, TField_even
|
|||||||
set(F_MATRICOLA, ct->get_matricola());
|
set(F_MATRICOLA, ct->get_matricola());
|
||||||
set(F_CESPITE, ct->get_cespite());
|
set(F_CESPITE, ct->get_cespite());
|
||||||
//riempie lo sheet
|
//riempie lo sheet
|
||||||
fill_sheet_storico(codattr);
|
fill_sheet_storico(str.as_string());
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
@ -468,17 +442,14 @@ bool TGestione_attrezzature_mask::on_field_event(TOperable_field& o, TField_even
|
|||||||
if (get(F_CODART).empty() || get(F_PROGRESSIVO) <= 0L)
|
if (get(F_CODART).empty() || get(F_PROGRESSIVO) <= 0L)
|
||||||
return warning_box(TR("E' necessario compilare articolo e progressivo per aggiungere una nuova attrezzatura!"));
|
return warning_box(TR("E' necessario compilare articolo e progressivo per aggiungere una nuova attrezzatura!"));
|
||||||
|
|
||||||
TString80 codtab;
|
const TString& codtab = get(F_PROGRESSIVO);
|
||||||
const TString& codart = get(F_CODART);
|
|
||||||
const long progressivo = get_long(F_PROGRESSIVO);
|
|
||||||
codtab.format("%-5s%07d", (const char*)codart, progressivo);
|
|
||||||
//2) controllo effettiva "nuovezza" dell'attrezzatura..
|
//2) controllo effettiva "nuovezza" dell'attrezzatura..
|
||||||
//...se l'utonto tentasse di inserire come nuova un'attrezzatura già esistente va cazziato!
|
//...se l'utonto tentasse di inserire come nuova un'attrezzatura già esistente va cazziato!
|
||||||
TModule_table tab_att("&ATT");
|
TModule_table tab_att("&ATT");
|
||||||
tab_att.put("CODTAB", codtab);
|
tab_att.put("CODTAB", codtab);
|
||||||
const int err = tab_att.read();
|
const int err = tab_att.read();
|
||||||
if (err == NOERR)
|
if (err == NOERR)
|
||||||
return warning_box(TR("L'attrezzatura con questi articolo e progressivo esiste gia'!"));
|
return warning_box(TR("L'attrezzatura esiste già!"));
|
||||||
|
|
||||||
//3) invio dati al gestore della tabella &ATT delle attrezzature tramite .ini
|
//3) invio dati al gestore della tabella &ATT delle attrezzature tramite .ini
|
||||||
TFilename trans_ini;
|
TFilename trans_ini;
|
||||||
@ -494,8 +465,8 @@ bool TGestione_attrezzature_mask::on_field_event(TOperable_field& o, TField_even
|
|||||||
ini.set("CODTAB", codtab);
|
ini.set("CODTAB", codtab);
|
||||||
ini.set("I0", get(F_CODCF));
|
ini.set("I0", get(F_CODCF));
|
||||||
ini.set("D0", TDate(TODAY));
|
ini.set("D0", TDate(TODAY));
|
||||||
TString matricola;
|
TString80 matricola;
|
||||||
matricola.format("%-5s%-15s", (const char*)get(F_CODART), (const char*)get(F_MATRICOLA));
|
matricola.format("%-20s%-15s", (const char*)get(F_CODART), (const char*)get(F_MATRICOLA));
|
||||||
ini.set("S0", matricola);
|
ini.set("S0", matricola);
|
||||||
ini.set("S1", get(F_CESPITE));
|
ini.set("S1", get(F_CESPITE));
|
||||||
}
|
}
|
||||||
@ -518,7 +489,7 @@ bool TGestione_attrezzature_mask::on_field_event(TOperable_field& o, TField_even
|
|||||||
const TDate data_storico = ini.get("D0");
|
const TDate data_storico = ini.get("D0");
|
||||||
const TString& cespite = ini.get("S1");
|
const TString& cespite = ini.get("S1");
|
||||||
const TString& full_matricola = ini.get("S0");
|
const TString& full_matricola = ini.get("S0");
|
||||||
const TString16 matricola = full_matricola.mid(5,15);
|
const TString16 matricola = full_matricola.mid(20);
|
||||||
|
|
||||||
//4b) da file ini crea un record nuovo sulla tabella &HIS; se non lo facesse l'albero con le attrezzature non..
|
//4b) da file ini crea un record nuovo sulla tabella &HIS; se non lo facesse l'albero con le attrezzature non..
|
||||||
//....potrebbe mai vedere la nuova attrezzatura aggiunta; sara' poi l'albero stesso ad occuparsi dello sheet
|
//....potrebbe mai vedere la nuova attrezzatura aggiunta; sara' poi l'albero stesso ad occuparsi dello sheet
|
||||||
@ -536,8 +507,8 @@ bool TGestione_attrezzature_mask::on_field_event(TOperable_field& o, TField_even
|
|||||||
return warning_box(TR("Impossibile aggiungere l'attrezzatura! Risulta gia' presente."));
|
return warning_box(TR("Impossibile aggiungere l'attrezzatura! Risulta gia' presente."));
|
||||||
|
|
||||||
set(F_CODCF, codcf, true);
|
set(F_CODCF, codcf, true);
|
||||||
set(F_CODART, codtab.left(5), true);
|
set(F_CODART, full_matricola.left(20), true);
|
||||||
set(F_PROGRESSIVO, codtab.mid(5,7), true);
|
set(F_PROGRESSIVO, codtab, true);
|
||||||
set(F_MATRICOLA, matricola);
|
set(F_MATRICOLA, matricola);
|
||||||
set(F_CESPITE, cespite);
|
set(F_CESPITE, cespite);
|
||||||
}
|
}
|
||||||
|
28
ha/ha3900a.h
28
ha/ha3900a.h
@ -27,15 +27,37 @@
|
|||||||
#define S_BOL_OPEN_CODNUM 109
|
#define S_BOL_OPEN_CODNUM 109
|
||||||
#define S_BOL_OPEN_NDOC 110
|
#define S_BOL_OPEN_NDOC 110
|
||||||
|
|
||||||
#define S_BOL_CLOSE_ANNO 111
|
#define S_BOL_CLOSE_ANNO 111
|
||||||
#define S_BOL_CLOSE_CODNUM 112
|
#define S_BOL_CLOSE_CODNUM 112
|
||||||
#define S_BOL_CLOSE_NDOC 113
|
#define S_BOL_CLOSE_NDOC 113
|
||||||
|
|
||||||
#define S_CODCF 114
|
#define S_CODCF 114
|
||||||
#define S_INDSPED 115
|
#define S_INDSPED 115
|
||||||
#define S_CODMAG 116
|
#define S_CODMAG 116
|
||||||
#define S_CLOSED 117
|
#define S_CLOSED 117
|
||||||
|
|
||||||
|
#define S_FLAG01 118
|
||||||
|
#define S_FLAG02 119
|
||||||
|
#define S_FLAG03 120
|
||||||
|
#define S_FLAG04 121
|
||||||
|
#define S_FLAG05 122
|
||||||
|
#define S_FLAG06 123
|
||||||
|
#define S_FLAG07 124
|
||||||
|
#define S_FLAG08 125
|
||||||
|
#define S_FLAG09 126
|
||||||
|
#define S_FLAG10 127
|
||||||
|
#define S_FLAG11 128
|
||||||
|
#define S_FLAG12 129
|
||||||
|
#define S_FLAG13 130
|
||||||
|
#define S_FLAG14 131
|
||||||
|
#define S_FLAG15 132
|
||||||
|
#define S_FLAG16 133
|
||||||
|
#define S_FLAG17 134
|
||||||
|
#define S_FLAG18 135
|
||||||
|
#define S_FLAG19 136
|
||||||
|
#define S_FLAG20 137
|
||||||
|
|
||||||
|
|
||||||
#define S_DESART 144
|
#define S_DESART 144
|
||||||
#define S_DESCF 154
|
#define S_DESCF 154
|
||||||
#define S_DESCINDSPED 155
|
#define S_DESCINDSPED 155
|
||||||
|
249
ha/ha3900a.uml
249
ha/ha3900a.uml
@ -14,7 +14,7 @@ ENDPAGE
|
|||||||
|
|
||||||
PAGE "Gestione attrezzature" 0 2 0 0
|
PAGE "Gestione attrezzature" 0 2 0 0
|
||||||
|
|
||||||
GROUPBOX DLG_NULL 79 5
|
GROUPBOX DLG_NULL 79 6
|
||||||
BEGIN
|
BEGIN
|
||||||
PROMPT 1 0 "@bParametri"
|
PROMPT 1 0 "@bParametri"
|
||||||
END
|
END
|
||||||
@ -22,7 +22,6 @@ END
|
|||||||
NUMBER F_CODCF 6
|
NUMBER F_CODCF 6
|
||||||
BEGIN
|
BEGIN
|
||||||
PROMPT 2 1 "Cliente "
|
PROMPT 2 1 "Cliente "
|
||||||
FLAGS "R"
|
|
||||||
USE LF_CLIFO
|
USE LF_CLIFO
|
||||||
INPUT TIPOCF "C"
|
INPUT TIPOCF "C"
|
||||||
INPUT CODCF F_CODCF
|
INPUT CODCF F_CODCF
|
||||||
@ -49,9 +48,29 @@ BEGIN
|
|||||||
CHECKTYPE NORMAL
|
CHECKTYPE NORMAL
|
||||||
END
|
END
|
||||||
|
|
||||||
STRING F_CODART 5
|
NUMBER F_PROGRESSIVO 8
|
||||||
BEGIN
|
BEGIN
|
||||||
PROMPT 2 2 "Articolo "
|
PROMPT 2 2 "Matricola Hardy "
|
||||||
|
FLAGS "UZ"
|
||||||
|
USE &ATT
|
||||||
|
JOIN LF_ANAMAG INTO CODART=S0[1,20]
|
||||||
|
INPUT CODTAB F_PROGRESSIVO
|
||||||
|
DISPLAY "Matr. Hardy" CODTAB
|
||||||
|
DISPLAY "Articolo@20" S0[1,20]
|
||||||
|
DISPLAY "Matricola@15" S0[21,35]
|
||||||
|
DISPLAY "Descrizione@50" LF_ANAMAG->DESCR
|
||||||
|
DISPLAY "Cespite@10" S1[1,10]
|
||||||
|
OUTPUT F_CODART S0[1,20]
|
||||||
|
OUTPUT F_PROGRESSIVO CODTAB
|
||||||
|
OUTPUT F_MATRICOLA S0[21,35]
|
||||||
|
OUTPUT F_CESPITE S1[1,10]
|
||||||
|
OUTPUT F_CODCF I0
|
||||||
|
CHECKTYPE SEARCH
|
||||||
|
END
|
||||||
|
|
||||||
|
STRING F_CODART 20
|
||||||
|
BEGIN
|
||||||
|
PROMPT 44 2 "Articolo "
|
||||||
FLAGS "U"
|
FLAGS "U"
|
||||||
USE LF_ANAMAG SELECT (GRMERC="50")&&(SOSPESO!="X")
|
USE LF_ANAMAG SELECT (GRMERC="50")&&(SOSPESO!="X")
|
||||||
INPUT CODART F_CODART
|
INPUT CODART F_CODART
|
||||||
@ -65,7 +84,7 @@ END
|
|||||||
|
|
||||||
STRING F_DESART 50
|
STRING F_DESART 50
|
||||||
BEGIN
|
BEGIN
|
||||||
PROMPT 23 2 ""
|
PROMPT 2 3 "Descrizione "
|
||||||
USE LF_ANAMAG KEY 2 SELECT (GRMERC="50")&&(SOSPESO!="X")
|
USE LF_ANAMAG KEY 2 SELECT (GRMERC="50")&&(SOSPESO!="X")
|
||||||
INPUT DESCR F_DESART
|
INPUT DESCR F_DESART
|
||||||
DISPLAY "Descrizione@50" DESCR
|
DISPLAY "Descrizione@50" DESCR
|
||||||
@ -74,38 +93,17 @@ BEGIN
|
|||||||
CHECKTYPE NORMAL
|
CHECKTYPE NORMAL
|
||||||
END
|
END
|
||||||
|
|
||||||
NUMBER F_PROGRESSIVO 7
|
|
||||||
BEGIN
|
|
||||||
PROMPT 2 3 "Progres. "
|
|
||||||
FLAGS "UZ"
|
|
||||||
USE &ATT
|
|
||||||
JOIN LF_ANAMAG INTO CODART=CODTAB[1,5]
|
|
||||||
INPUT CODTAB[1,5] F_CODART
|
|
||||||
INPUT CODTAB[6,12] F_PROGRESSIVO
|
|
||||||
DISPLAY "Progressivo" CODTAB[6,12]
|
|
||||||
DISPLAY "Articolo" CODTAB[1,5]
|
|
||||||
DISPLAY "Matricola@15" S0[6,20]
|
|
||||||
DISPLAY "Descrizione@50" LF_ANAMAG->DESCR
|
|
||||||
DISPLAY "Cespite@10" S1[1,10]
|
|
||||||
OUTPUT F_CODART CODTAB[1,5]
|
|
||||||
OUTPUT F_PROGRESSIVO CODTAB[6,12]
|
|
||||||
OUTPUT F_MATRICOLA S0[6,20]
|
|
||||||
OUTPUT F_CESPITE S1[1,10]
|
|
||||||
OUTPUT F_CODCF I0
|
|
||||||
CHECKTYPE SEARCH
|
|
||||||
END
|
|
||||||
|
|
||||||
STRING F_MATRICOLA 15
|
STRING F_MATRICOLA 15
|
||||||
BEGIN
|
BEGIN
|
||||||
PROMPT 24 3 "Matricola "
|
PROMPT 2 4 "Matricola Fornitore "
|
||||||
FLAGS "U"
|
FLAGS "U"
|
||||||
USE &ATT KEY 2
|
USE &ATT KEY 2
|
||||||
JOIN LF_ANAMAG INTO CODART=CODTAB[1,5]
|
JOIN LF_ANAMAG INTO CODART=CODTAB[1,20]
|
||||||
INPUT S0[1,5] F_CODART
|
INPUT S0[1,5] F_CODART
|
||||||
INPUT S0[6,20] F_MATRICOLA
|
INPUT S0[6,20] F_MATRICOLA
|
||||||
DISPLAY "Codice@5" S0[1,5]
|
DISPLAY "Codice@20" S0[1,20]
|
||||||
DISPLAY "Matricola@15" S0[6,20]
|
DISPLAY "Matricola@15" S0[21,35]
|
||||||
DISPLAY "Progressivo" CODTAB[6,12]
|
DISPLAY "Matr. Hardy" CODTAB
|
||||||
DISPLAY "Descrizione@50" LF_ANAMAG->DESCR
|
DISPLAY "Descrizione@50" LF_ANAMAG->DESCR
|
||||||
DISPLAY "Cespite@10" S1[1,10]
|
DISPLAY "Cespite@10" S1[1,10]
|
||||||
DISPLAY "Cliente" I0
|
DISPLAY "Cliente" I0
|
||||||
@ -115,16 +113,16 @@ END
|
|||||||
|
|
||||||
STRING F_CESPITE 10
|
STRING F_CESPITE 10
|
||||||
BEGIN
|
BEGIN
|
||||||
PROMPT 55 3 "Cespite "
|
PROMPT 55 4 "Cespite "
|
||||||
FLAGS "UZ"
|
FLAGS "UZ"
|
||||||
USE &ATT
|
USE &ATT
|
||||||
JOIN LF_ANAMAG INTO CODART=CODTAB[1,5]
|
JOIN LF_ANAMAG INTO CODART=CODTAB[1,20]
|
||||||
INPUT CODTAB[1,5] F_CODART
|
INPUT CODTAB[1,5] F_CODART
|
||||||
INPUT CODTAB[6,12] F_PROGRESSIVO
|
INPUT CODTAB[6,12] F_PROGRESSIVO
|
||||||
DISPLAY "Cespite@10" S1[1,10]
|
DISPLAY "Cespite@10" S1[1,10]
|
||||||
DISPLAY "Articolo" CODTAB[1,5]
|
DISPLAY "Articolo@20" S0[1,20]
|
||||||
DISPLAY "Progressivo" CODTAB[6,12]
|
DISPLAY "Matr.Hardy" CODTAB
|
||||||
DISPLAY "Matricola@15" S0[6,20]
|
DISPLAY "Matricola@15" S0[21,35]
|
||||||
DISPLAY "Descrizione@50" LF_ANAMAG->DESCR
|
DISPLAY "Descrizione@50" LF_ANAMAG->DESCR
|
||||||
DISPLAY "Cliente" I0
|
DISPLAY "Cliente" I0
|
||||||
COPY OUTPUT F_PROGRESSIVO
|
COPY OUTPUT F_PROGRESSIVO
|
||||||
@ -134,21 +132,22 @@ END
|
|||||||
|
|
||||||
BUTTON DLG_ADD_NEW 20 1
|
BUTTON DLG_ADD_NEW 20 1
|
||||||
BEGIN
|
BEGIN
|
||||||
PROMPT 53 5 "Nuova attrezzatura"
|
PROMPT 53 6 "Nuova attrezzatura"
|
||||||
END
|
END
|
||||||
|
|
||||||
|
|
||||||
TEXT DLG_NULL
|
TEXT DLG_NULL
|
||||||
BEGIN
|
BEGIN
|
||||||
PROMPT 1 5 "@bAttrezzature"
|
PROMPT 1 6 "@bAttrezzature"
|
||||||
END
|
END
|
||||||
|
|
||||||
TLIST F_ATTREZZATURE 0 6
|
TLIST F_ATTREZZATURE -3 6
|
||||||
BEGIN
|
BEGIN
|
||||||
PROMPT 0 6 "Attrezzatura"
|
PROMPT 0 7 "Attrezzatura"
|
||||||
DISPLAY "Codice@20" CODTAB
|
DISPLAY "Matr.Hardy@10" CODTAB
|
||||||
DISPLAY "Matricola@15" S0[6,20]
|
DISPLAY "Articolo@20" S0[1,20]
|
||||||
DISPLAY "Descrizione@35" S10
|
DISPLAY "Descrizione@35" S10
|
||||||
|
DISPLAY "Matricola@15" S0[21,35]
|
||||||
DISPLAY "Cespite@10" S1[1,10]
|
DISPLAY "Cespite@10" S1[1,10]
|
||||||
DISPLAY "Cliente" I0
|
DISPLAY "Cliente" I0
|
||||||
DISPLAY "Assegnamento" D0
|
DISPLAY "Assegnamento" D0
|
||||||
@ -156,16 +155,16 @@ END
|
|||||||
|
|
||||||
TEXT DLG_NULL
|
TEXT DLG_NULL
|
||||||
BEGIN
|
BEGIN
|
||||||
PROMPT 1 12 "@bStorico interventi"
|
PROMPT 1 14 "@bStorico interventi"
|
||||||
END
|
END
|
||||||
|
|
||||||
SPREADSHEET F_STORICO 0 0
|
SPREADSHEET F_STORICO
|
||||||
BEGIN
|
BEGIN
|
||||||
PROMPT 0 13 "Storico interventi"
|
PROMPT 0 15 "Storico interventi"
|
||||||
ITEM "Tipo\nIntervento@16"
|
ITEM "Tipo\nIntervento@16"
|
||||||
ITEM "Data@10"
|
ITEM "Data@10"
|
||||||
ITEM "Note@15"
|
ITEM "Note@15"
|
||||||
ITEM "Articolo"
|
ITEM "Articolo@20"
|
||||||
ITEM "UM"
|
ITEM "UM"
|
||||||
ITEM "Quantità"
|
ITEM "Quantità"
|
||||||
ITEM "Importo@10"
|
ITEM "Importo@10"
|
||||||
@ -179,6 +178,26 @@ BEGIN
|
|||||||
ITEM "Sede"
|
ITEM "Sede"
|
||||||
ITEM "Mag"
|
ITEM "Mag"
|
||||||
ITEM "Chiusa"
|
ITEM "Chiusa"
|
||||||
|
ITEM "N1@1"
|
||||||
|
ITEM "N2@1"
|
||||||
|
ITEM "N3@1"
|
||||||
|
ITEM "N4@1"
|
||||||
|
ITEM "N5@1"
|
||||||
|
ITEM "N6@1"
|
||||||
|
ITEM "N7@1"
|
||||||
|
ITEM "N8@1"
|
||||||
|
ITEM "N9@1"
|
||||||
|
ITEM "N10@1"
|
||||||
|
ITEM "N11@1"
|
||||||
|
ITEM "N12@1"
|
||||||
|
ITEM "N13@1"
|
||||||
|
ITEM "N14@1"
|
||||||
|
ITEM "N15@1"
|
||||||
|
ITEM "N16@1"
|
||||||
|
ITEM "N17@1"
|
||||||
|
ITEM "N18@1"
|
||||||
|
ITEM "N19@1"
|
||||||
|
ITEM "N20@1"
|
||||||
END
|
END
|
||||||
|
|
||||||
ENDPAGE
|
ENDPAGE
|
||||||
@ -215,12 +234,12 @@ BEGIN
|
|||||||
FIELD D0
|
FIELD D0
|
||||||
END
|
END
|
||||||
|
|
||||||
STRING S_CODART 5
|
STRING S_CODART 20
|
||||||
BEGIN
|
BEGIN
|
||||||
PROMPT 1 2 "Art. collegato "
|
PROMPT 1 2 "Art."
|
||||||
USE LF_ANAMAG SELECT (GRMERC="50")&&(SOSPESO!="X")
|
USE LF_ANAMAG SELECT (GRMERC="50")&&(SOSPESO!="X")
|
||||||
INPUT CODART S_CODART
|
INPUT CODART S_CODART
|
||||||
DISPLAY "Codice" CODART
|
DISPLAY "Codice@20" CODART
|
||||||
DISPLAY "Descrizione@50" DESCR
|
DISPLAY "Descrizione@50" DESCR
|
||||||
OUTPUT S_CODART CODART
|
OUTPUT S_CODART CODART
|
||||||
OUTPUT S_DESART DESCR
|
OUTPUT S_DESART DESCR
|
||||||
@ -231,13 +250,13 @@ BEGIN
|
|||||||
FIELD S3
|
FIELD S3
|
||||||
END
|
END
|
||||||
|
|
||||||
STRING S_DESART 50
|
STRING S_DESART 50 45
|
||||||
BEGIN
|
BEGIN
|
||||||
PROMPT 25 2 ""
|
PROMPT 28 2 ""
|
||||||
USE ANAMAG KEY 2 SELECT GRMERC="50"
|
USE ANAMAG KEY 2 SELECT GRMERC="50"
|
||||||
INPUT DESCR S_DESART
|
INPUT DESCR S_DESART
|
||||||
DISPLAY "Descrizione@50" DESCR
|
DISPLAY "Descrizione@50" DESCR
|
||||||
DISPLAY "Codice" CODART
|
DISPLAY "Codice@20" CODART
|
||||||
COPY OUTPUT S_CODART
|
COPY OUTPUT S_CODART
|
||||||
GROUP 1
|
GROUP 1
|
||||||
END
|
END
|
||||||
@ -435,12 +454,136 @@ BEGIN
|
|||||||
CHECKTYPE NORMAL
|
CHECKTYPE NORMAL
|
||||||
END
|
END
|
||||||
|
|
||||||
|
ENDPAGE
|
||||||
|
|
||||||
|
PAGE "Note" -1 -1 78 15
|
||||||
|
|
||||||
STRING S_NOTE 70
|
STRING S_NOTE 70
|
||||||
BEGIN
|
BEGIN
|
||||||
PROMPT 1 13 "Note "
|
PROMPT 1 1 "Note "
|
||||||
FIELD S0
|
FIELD S0
|
||||||
END
|
END
|
||||||
|
|
||||||
|
BOOLEAN S_FLAG01
|
||||||
|
BEGIN
|
||||||
|
PROMPT 1 3 "Nota 1"
|
||||||
|
FIELD S1[1,1]
|
||||||
|
END
|
||||||
|
|
||||||
|
BOOLEAN S_FLAG02
|
||||||
|
BEGIN
|
||||||
|
PROMPT 1 4 "Nota 2"
|
||||||
|
FIELD S1[2,2]
|
||||||
|
END
|
||||||
|
|
||||||
|
BOOLEAN S_FLAG03
|
||||||
|
BEGIN
|
||||||
|
PROMPT 1 5 "Nota 3"
|
||||||
|
FIELD S1[3,3]
|
||||||
|
END
|
||||||
|
|
||||||
|
BOOLEAN S_FLAG04
|
||||||
|
BEGIN
|
||||||
|
PROMPT 1 6 "Nota 4"
|
||||||
|
FIELD S1[4,4]
|
||||||
|
END
|
||||||
|
|
||||||
|
BOOLEAN S_FLAG05
|
||||||
|
BEGIN
|
||||||
|
PROMPT 1 7 "Nota 5"
|
||||||
|
FIELD S1[5,5]
|
||||||
|
END
|
||||||
|
|
||||||
|
BOOLEAN S_FLAG06
|
||||||
|
BEGIN
|
||||||
|
PROMPT 1 8 "Nota 6"
|
||||||
|
FIELD S1[6,6]
|
||||||
|
END
|
||||||
|
|
||||||
|
BOOLEAN S_FLAG07
|
||||||
|
BEGIN
|
||||||
|
PROMPT 1 9 "Nota 7"
|
||||||
|
FIELD S1[7,7]
|
||||||
|
END
|
||||||
|
|
||||||
|
BOOLEAN S_FLAG08
|
||||||
|
BEGIN
|
||||||
|
PROMPT 1 10 "Nota 8"
|
||||||
|
FIELD S1[8,8]
|
||||||
|
END
|
||||||
|
|
||||||
|
BOOLEAN S_FLAG09
|
||||||
|
BEGIN
|
||||||
|
PROMPT 1 11 "Nota 9"
|
||||||
|
FIELD S1[9,9]
|
||||||
|
END
|
||||||
|
|
||||||
|
BOOLEAN S_FLAG10
|
||||||
|
BEGIN
|
||||||
|
PROMPT 1 12 "Nota 10"
|
||||||
|
FIELD S1[10,10]
|
||||||
|
END
|
||||||
|
|
||||||
|
BOOLEAN S_FLAG11
|
||||||
|
BEGIN
|
||||||
|
PROMPT 31 3 "Nota 11"
|
||||||
|
FIELD S1[11,11]
|
||||||
|
END
|
||||||
|
|
||||||
|
BOOLEAN S_FLAG12
|
||||||
|
BEGIN
|
||||||
|
PROMPT 31 4 "Nota 12"
|
||||||
|
FIELD S1[12,12]
|
||||||
|
END
|
||||||
|
|
||||||
|
BOOLEAN S_FLAG13
|
||||||
|
BEGIN
|
||||||
|
PROMPT 31 5 "Nota 13"
|
||||||
|
FIELD S1[13,13]
|
||||||
|
END
|
||||||
|
|
||||||
|
BOOLEAN S_FLAG14
|
||||||
|
BEGIN
|
||||||
|
PROMPT 31 6 "Nota 14"
|
||||||
|
FIELD S1[14,14]
|
||||||
|
END
|
||||||
|
|
||||||
|
BOOLEAN S_FLAG15
|
||||||
|
BEGIN
|
||||||
|
PROMPT 31 7 "Nota 15"
|
||||||
|
FIELD S1[15,15]
|
||||||
|
END
|
||||||
|
|
||||||
|
BOOLEAN S_FLAG16
|
||||||
|
BEGIN
|
||||||
|
PROMPT 31 8 "Nota 16"
|
||||||
|
FIELD S1[16,16]
|
||||||
|
END
|
||||||
|
|
||||||
|
BOOLEAN S_FLAG17
|
||||||
|
BEGIN
|
||||||
|
PROMPT 31 9 "Nota 17"
|
||||||
|
FIELD S1[17,17]
|
||||||
|
END
|
||||||
|
|
||||||
|
BOOLEAN S_FLAG18
|
||||||
|
BEGIN
|
||||||
|
PROMPT 31 10 "Nota 18"
|
||||||
|
FIELD S1[18,18]
|
||||||
|
END
|
||||||
|
|
||||||
|
BOOLEAN S_FLAG19
|
||||||
|
BEGIN
|
||||||
|
PROMPT 31 11 "Nota 19"
|
||||||
|
FIELD S1[19,19]
|
||||||
|
END
|
||||||
|
|
||||||
|
BOOLEAN S_FLAG20
|
||||||
|
BEGIN
|
||||||
|
PROMPT 31 12 "Nota 20"
|
||||||
|
FIELD S1[20,20]
|
||||||
|
END
|
||||||
|
|
||||||
ENDPAGE
|
ENDPAGE
|
||||||
|
|
||||||
TOOLBAR "bottombar" 0 0 0 2
|
TOOLBAR "bottombar" 0 0 0 2
|
||||||
|
@ -2,7 +2,6 @@
|
|||||||
#define F_DESCRART 202
|
#define F_DESCRART 202
|
||||||
|
|
||||||
#define F_PROGRESSIVO 205
|
#define F_PROGRESSIVO 205
|
||||||
#define F_CODART_X_MATR 206
|
|
||||||
#define F_MATRICOLA 207
|
#define F_MATRICOLA 207
|
||||||
#define F_DATA_FABBR 208
|
#define F_DATA_FABBR 208
|
||||||
|
|
||||||
|
105
ha/hatbatt.uml
105
ha/hatbatt.uml
@ -11,85 +11,73 @@ BEGIN
|
|||||||
PROMPT 1 0 "@bAttrezzatura"
|
PROMPT 1 0 "@bAttrezzatura"
|
||||||
END
|
END
|
||||||
|
|
||||||
STRING F_CODART 5
|
NUMBER F_PROGRESSIVO 8
|
||||||
BEGIN
|
BEGIN
|
||||||
PROMPT 2 1 "Articolo "
|
PROMPT 2 1 "Matricola Hardy "
|
||||||
|
FLAGS "UZ"
|
||||||
|
USE &ATT
|
||||||
|
JOIN LF_ANAMAG INTO CODART=S0[1,20]
|
||||||
|
JOIN LF_CESPI INTO IDCESPITE=S1
|
||||||
|
INPUT CODTAB F_PROGRESSIVO
|
||||||
|
DISPLAY "Matr.Hardy" CODTAB
|
||||||
|
DISPLAY "Articolo@20" S0[1,20]
|
||||||
|
DISPLAY "Matricola@15" S0[21,35]
|
||||||
|
DISPLAY "Cespite@10" S1
|
||||||
|
DISPLAY "Descrizione cespite@35" LF_CESPI->DESC
|
||||||
|
DISPLAY "Note@35" S3
|
||||||
|
DISPLAY "Descrizione articolo@50" LF_ANAMAG->DESCR
|
||||||
|
OUTPUT F_PROGRESSIVO CODTAB
|
||||||
|
FIELD CODTAB
|
||||||
|
CHECKTYPE REQUIRED
|
||||||
|
KEY 1
|
||||||
|
END
|
||||||
|
|
||||||
|
STRING F_CODART 20
|
||||||
|
BEGIN
|
||||||
|
PROMPT 38 1 "Articolo "
|
||||||
FLAGS "U"
|
FLAGS "U"
|
||||||
USE LF_ANAMAG SELECT (GRMERC="50")&&(SOSPESO!="X")
|
USE LF_ANAMAG SELECT (GRMERC="50")&&(SOSPESO!="X")
|
||||||
INPUT CODART F_CODART
|
INPUT CODART F_CODART
|
||||||
DISPLAY "Codice" CODART
|
DISPLAY "Codice@20" CODART
|
||||||
DISPLAY "Descrizione@50" DESCR
|
DISPLAY "Descrizione@50" DESCR
|
||||||
OUPUT F_CODART CODART
|
OUPUT F_CODART CODART
|
||||||
OUPUT F_DESCRART DESCR
|
OUPUT F_DESCRART DESCR
|
||||||
FIELD CODTAB[1,5]
|
FIELD S0[1,20]
|
||||||
CHECKTYPE FORCED
|
CHECKTYPE FORCED
|
||||||
MESSAGE COPY,F_CODART_X_MATR
|
|
||||||
KEY 1
|
|
||||||
ADD RUN ve2 -3
|
ADD RUN ve2 -3
|
||||||
END
|
END
|
||||||
|
|
||||||
STRING F_DESCRART 50
|
STRING F_DESCRART 50
|
||||||
BEGIN
|
BEGIN
|
||||||
PROMPT 22 1 ""
|
PROMPT 2 2 "Descrizione "
|
||||||
USE LF_ANAMAG KEY 2 SELECT (GRMERC="50")&&(SOSPESO!="X")
|
USE LF_ANAMAG KEY 2 SELECT (GRMERC="50")&&(SOSPESO!="X")
|
||||||
INPUT DESCR F_DESCRART
|
INPUT DESCR F_DESCRART
|
||||||
DISPLAY "Descrizione@50" DESCR
|
DISPLAY "Descrizione@50" DESCR
|
||||||
DISPLAY "Codice" CODART
|
DISPLAY "Codice@20" CODART
|
||||||
COPY OUTPUT F_CODART
|
COPY OUTPUT F_CODART
|
||||||
CHECKTYPE REQUIRED
|
CHECKTYPE REQUIRED
|
||||||
END
|
END
|
||||||
|
|
||||||
NUMBER F_PROGRESSIVO 7
|
|
||||||
BEGIN
|
|
||||||
PROMPT 2 2 "Progress. "
|
|
||||||
FLAGS "UZ"
|
|
||||||
USE &ATT
|
|
||||||
JOIN LF_ANAMAG INTO CODART=CODTAB[1,5]
|
|
||||||
JOIN LF_CESPI INTO IDCESPITE=S1
|
|
||||||
INPUT CODTAB[1,5] F_CODART
|
|
||||||
INPUT CODTAB[6,12] F_PROGRESSIVO
|
|
||||||
DISPLAY "Progressivo" CODTAB[6,12]
|
|
||||||
DISPLAY "Articolo" CODTAB[1,5]
|
|
||||||
DISPLAY "Matricola@15" S0[6,20]
|
|
||||||
DISPLAY "Cespite@10" S1
|
|
||||||
DISPLAY "Descrizione cespite@35" LF_CESPI->DESC
|
|
||||||
DISPLAY "Note@35" S3
|
|
||||||
DISPLAY "Descrizione articolo@50" LF_ANAMAG->DESCR
|
|
||||||
OUTPUT F_CODART CODTAB[1,5]
|
|
||||||
OUTPUT F_PROGRESSIVO CODTAB[6,12]
|
|
||||||
FIELD CODTAB[6,12]
|
|
||||||
CHECKTYPE REQUIRED
|
|
||||||
KEY 1
|
|
||||||
END
|
|
||||||
|
|
||||||
//questo campo serve per poter avere le display della matricola gia' puntate sul corretto articolo
|
|
||||||
STRING F_CODART_X_MATR 5
|
|
||||||
BEGIN
|
|
||||||
PROMPT 40 3 "Atricolo x matricola"
|
|
||||||
FIELD S0[1,5]
|
|
||||||
FLAGS "H"
|
|
||||||
END
|
|
||||||
|
|
||||||
STRING F_MATRICOLA 15
|
STRING F_MATRICOLA 15
|
||||||
BEGIN
|
BEGIN
|
||||||
PROMPT 2 3 "Matricola "
|
PROMPT 2 3 "Matricola "
|
||||||
FLAGS "U"
|
FLAGS "U"
|
||||||
USE &ATT KEY 2
|
USE &ATT KEY 2
|
||||||
JOIN LF_ANAMAG INTO CODART=CODTAB[1,5]
|
JOIN LF_ANAMAG INTO CODART=S0[1,20]
|
||||||
JOIN LF_CESPI INTO IDCESPITE=S1
|
JOIN LF_CESPI INTO IDCESPITE=S1
|
||||||
INPUT S0[1,5] F_CODART
|
INPUT S0[1,20] F_CODART
|
||||||
INPUT S0[6,20] F_MATRICOLA
|
INPUT S0[21,35] F_MATRICOLA
|
||||||
DISPLAY "Articolo@5" S0[1,5]
|
DISPLAY "Articolo@20" S0[1,20]
|
||||||
DISPLAY "Matricola@15" S0[6,20]
|
DISPLAY "Matricola@15" S0[21,35]
|
||||||
DISPLAY "Progressivo" CODTAB[6,12]
|
DISPLAY "Matr.Hardy" CODTAB
|
||||||
DISPLAY "Cespite@10" S1
|
DISPLAY "Cespite@10" S1
|
||||||
DISPLAY "Descrizione cespite@35" LF_CESPI->DESC
|
DISPLAY "Descrizione cespite@35" LF_CESPI->DESC
|
||||||
DISPLAY "Note@35" S3
|
DISPLAY "Note@35" S3
|
||||||
DISPLAY "Descrizione articolo@50" LF_ANAMAG->DESCR
|
DISPLAY "Descrizione articolo@50" LF_ANAMAG->DESCR
|
||||||
COPY OUTPUT F_PROGRESSIVO
|
COPY OUTPUT F_PROGRESSIVO
|
||||||
OUTPUT F_MATRICOLA S0[6,20]
|
OUTPUT F_MATRICOLA S0[21,35]
|
||||||
CHECKTYPE NORMAL
|
CHECKTYPE NORMAL
|
||||||
FIELD S0[6,20]
|
FIELD S0[21,35]
|
||||||
KEY 2
|
KEY 2
|
||||||
END
|
END
|
||||||
|
|
||||||
@ -128,14 +116,14 @@ BEGIN
|
|||||||
FLAGS "UZ"
|
FLAGS "UZ"
|
||||||
USE &ATT
|
USE &ATT
|
||||||
JOIN LF_CESPI INTO IDCESPITE=S1
|
JOIN LF_CESPI INTO IDCESPITE=S1
|
||||||
JOIN LF_ANAMAG INTO CODART=CODTAB[1,5]
|
JOIN LF_ANAMAG INTO CODART=S0[1,20]
|
||||||
INPUT S1[1,10] F_CESPITE_SEARCH
|
INPUT S1[1,10] F_CESPITE_SEARCH
|
||||||
DISPLAY "Cespite@10" S1
|
DISPLAY "Cespite@10" S1
|
||||||
DISPLAY "Descrizione cespite@50" LF_CESPI->DESC
|
DISPLAY "Descrizione cespite@50" LF_CESPI->DESC
|
||||||
DISPLAY "Note@35" S3
|
DISPLAY "Note@35" S3
|
||||||
DISPLAY "Articolo" CODTAB[1,5]
|
DISPLAY "Articolo" S0[1,20]
|
||||||
DISPLAY "Progressivo" CODTAB[6,12]
|
DISPLAY "Matr.Hardy" CODTAB
|
||||||
DISPLAY "Matricola@15" S0[6,20]
|
DISPLAY "Matricola@15" S0[21,35]
|
||||||
COPY OUTPUT F_PROGRESSIVO
|
COPY OUTPUT F_PROGRESSIVO
|
||||||
OUTPUT F_CESPITE_SEARCH S1
|
OUTPUT F_CESPITE_SEARCH S1
|
||||||
OUTPUT F_DESC_CES_SEARCH LF_CESPI->DESC
|
OUTPUT F_DESC_CES_SEARCH LF_CESPI->DESC
|
||||||
@ -155,9 +143,9 @@ BEGIN
|
|||||||
DISPLAY "Descrizione cespite@50" LF_CESPI->DESC
|
DISPLAY "Descrizione cespite@50" LF_CESPI->DESC
|
||||||
DISPLAY "Cespite@10" S1
|
DISPLAY "Cespite@10" S1
|
||||||
DISPLAY "Note@35" S3
|
DISPLAY "Note@35" S3
|
||||||
DISPLAY "Articolo" CODTAB[1,5]
|
DISPLAY "Articolo" S0[1,20]
|
||||||
DISPLAY "Progressivo" CODTAB[6,12]
|
DISPLAY "Matr.Hardy" CODTAB
|
||||||
DISPLAY "Matricola@15" S0[6,20]
|
DISPLAY "Matricola@15" S0[21,35]
|
||||||
COPY OUTPUT F_CESPITE_SEARCH*/
|
COPY OUTPUT F_CESPITE_SEARCH*/
|
||||||
GROUP 2
|
GROUP 2
|
||||||
END
|
END
|
||||||
@ -260,11 +248,10 @@ ENDMASK
|
|||||||
/*
|
/*
|
||||||
Mappa campi sul file TABMOD (tabella &ATT):
|
Mappa campi sul file TABMOD (tabella &ATT):
|
||||||
-------------------------------------------
|
-------------------------------------------
|
||||||
CODTAB[1,5] = codart (A)
|
CODTAB = Matricola Hardy (N8 z)
|
||||||
CODTAB[6,12] = progressivo (N z)
|
S0[1,20] = codart per matricola (A20)
|
||||||
S0[1,5] = codart per matricola (A)
|
S0[21,35] = matricola fornitore (A15)
|
||||||
S0[6,20] = matricola (A)
|
S1[1,10] = codice cespite (A10)
|
||||||
S1[1,10] = codice cespite (A)
|
|
||||||
S3 = descrizione aggiuntiva cespite (da importazione iniziale dati Hardy)
|
S3 = descrizione aggiuntiva cespite (da importazione iniziale dati Hardy)
|
||||||
I0 = codice cliente
|
I0 = codice cliente
|
||||||
I1 = codice indirizzo spedizione
|
I1 = codice indirizzo spedizione
|
||||||
|
Loading…
x
Reference in New Issue
Block a user