Patch level :

Files correlati     :
Ricompilazione Demo : [ ]
Commento            :


git-svn-id: svn://10.65.10.50/branches/R_10_00@22248 c028cbd2-c16b-5b4b-a496-9718f37d4682
This commit is contained in:
luca 2011-06-09 14:02:40 +00:00
parent 01d48b37a9
commit e0db1da9f1
4 changed files with 82 additions and 28 deletions

View File

@ -509,6 +509,8 @@ bool TGenera_ordini_mask::on_field_event(TOperable_field& o, TField_event e, lon
if (e == fe_modify) if (e == fe_modify)
{ {
int found = -1; int found = -1;
bool non_esiste = true;
const TString& selected_codart = o.get(); const TString& selected_codart = o.get();
//ricerca sui codici articolo in anagrafica possibili (sono quelli sullo sheet) //ricerca sui codici articolo in anagrafica possibili (sono quelli sullo sheet)
TSheet_field& sf_righe = sfield(F_ARTICLES); TSheet_field& sf_righe = sfield(F_ARTICLES);
@ -521,6 +523,7 @@ bool TGenera_ordini_mask::on_field_event(TOperable_field& o, TField_event e, lon
break; break;
} }
} }
//se non lo pesca in anagrafica tenta con i codici articolo fornitore (CODCORR_CODARTALT)
if (found < 0) if (found < 0)
{ {
FOR_EACH_SHEET_ROW(sf_righe, r, row) FOR_EACH_SHEET_ROW(sf_righe, r, row)
@ -535,6 +538,7 @@ bool TGenera_ordini_mask::on_field_event(TOperable_field& o, TField_event e, lon
recset.set_var("#CODARTALT", selected_codart); recset.set_var("#CODARTALT", selected_codart);
recset.set_var("#CODART", riga_codart); recset.set_var("#CODART", riga_codart);
const int items = recset.items(); const int items = recset.items();
//usando la chiave 1 -> items puo' essere 1 o 0 per ogni riga dello sheet
if (items == 1) if (items == 1)
{ {
if (found < 0) if (found < 0)
@ -544,19 +548,26 @@ bool TGenera_ordini_mask::on_field_event(TOperable_field& o, TField_event e, lon
error_box(FR("Il codice %s puo' riferirsi alle righe %d e %d!\nRisolvere l'ambiguita' in anagrafica articoli."), error_box(FR("Il codice %s puo' riferirsi alle righe %d e %d!\nRisolvere l'ambiguita' in anagrafica articoli."),
(const char*)selected_codart, found + 1, r + 1); (const char*)selected_codart, found + 1, r + 1);
found = -1; found = -1;
non_esiste = false;
break; break;
} }
} } //if(items==1...
} } //FOR_EACH_SHEET_ROW(sf_righe,...
} } //if(found<0...
//ha trovato l'articolo nello sheet e si posiziona sulla sua riga
if (found >= 0) if (found >= 0)
{ {
//quando trova la riga con l'articolo corrispondente -> si posiziona sulla qta //si posiziona sulla qta
const int column = sf_righe.cid2index(F_QTA); const int column = sf_righe.cid2index(F_QTA);
sf_righe.select(found, column, true); sf_righe.select(found, column, true);
sf_righe.set_focus(); sf_righe.set_focus();
} }
else //se non l'ha trovato -> segnala che l'articolo selezionato non esiste nello sheet
{
if (non_esiste)
error_box(TR("L'articolo %s selezionato non esiste nella lista"), (const char*)selected_codart);
}
} }
break; break;

View File

@ -95,8 +95,8 @@ TDoc_cache::TDoc_cache(const char* codnum, const char* tipodoc, const TDate& dat
class TEdit_rdocs_mask : public TAutomask class TEdit_rdocs_mask : public TAutomask
{ {
int _pos_art, _pos_desc, _pos_um, _pos_qta, _pos_qtaev, _pos_prz, _pos_iva, _pos_lav, _pos_col, int _pos_art, _pos_desc, _pos_um, _pos_qta, _pos_qtaev, _pos_prz, _pos_iva, _pos_lav, _pos_col,
_pos_dtprd_lav, _pos_qtaprd_lav, _pos_dtprd_col, _pos_qtaprd_col, _pos_num, _pos_anno, _pos_dtprd_lav, _pos_qtaprd_lav, _pos_dtprd_col_1, _pos_qtaprd_col_1, _pos_dtprd_col_2, _pos_qtaprd_col_2,
_pos_provv, _pos_ndoc, _pos_nrig, _pos_desiva, _pos_deslav, _pos_descol; _pos_num, _pos_anno, _pos_provv, _pos_ndoc, _pos_nrig, _pos_desiva, _pos_deslav, _pos_descol;
protected: protected:
virtual bool on_field_event(TOperable_field& o, TField_event e, long jolly); virtual bool on_field_event(TOperable_field& o, TField_event e, long jolly);
@ -126,8 +126,10 @@ TEdit_rdocs_mask::TEdit_rdocs_mask() : TAutomask ("ps1002100a")
_pos_dtprd_lav = sf_righe.cid2index(S_DATAPROD_LAV); _pos_dtprd_lav = sf_righe.cid2index(S_DATAPROD_LAV);
_pos_qtaprd_lav = sf_righe.cid2index(S_QTAPROD_LAV); _pos_qtaprd_lav = sf_righe.cid2index(S_QTAPROD_LAV);
_pos_col = sf_righe.cid2index(S_COLORE); _pos_col = sf_righe.cid2index(S_COLORE);
_pos_dtprd_col = sf_righe.cid2index(S_DATAPROD_COL); _pos_dtprd_col_1 = sf_righe.cid2index(S_DATAPROD_COL_1);
_pos_qtaprd_col = sf_righe.cid2index(S_QTAPROD_COL); _pos_qtaprd_col_1 = sf_righe.cid2index(S_QTAPROD_COL_1);
_pos_dtprd_col_2 = sf_righe.cid2index(S_DATAPROD_COL_2);
_pos_qtaprd_col_2 = sf_righe.cid2index(S_QTAPROD_COL_2);
_pos_num = sf_righe.cid2index(S_CODNUM); _pos_num = sf_righe.cid2index(S_CODNUM);
_pos_anno = sf_righe.cid2index(S_ANNO); _pos_anno = sf_righe.cid2index(S_ANNO);
_pos_provv = sf_righe.cid2index(S_PROVV); _pos_provv = sf_righe.cid2index(S_PROVV);
@ -188,11 +190,11 @@ bool TEdit_rdocs_mask::on_field_event(TOperable_field& o, TField_event e, long j
o.mask().set(S_QTAPROD_LAV, qta); o.mask().set(S_QTAPROD_LAV, qta);
} }
break; break;
case S_DATAPROD_COL: case S_DATAPROD_COL_1:
if (e == fe_modify) if (e == fe_modify)
{ {
const real qta = o.mask().get(S_QTA); const real qta = o.mask().get(S_QTA);
o.mask().set(S_QTAPROD_COL, qta); o.mask().set(S_QTAPROD_COL_1, qta);
} }
break; break;
@ -224,6 +226,21 @@ bool TEdit_rdocs_mask::on_field_event(TOperable_field& o, TField_event e, long j
fill_sheet(); fill_sheet();
} }
break; break;
case DLG_USER:
if (e == fe_button)
{
TSheet_field& sf_righe = sfield(F_RIGHE);
TMask& mask_riga = sf_righe.sheet_row_mask(jolly);
TRectype doc(LF_DOC);
doc.put(DOC_PROVV, 'D');
doc.put(DOC_ANNO, mask_riga.get_int(S_ANNO));
doc.put(DOC_CODNUM, mask_riga.get(S_CODNUM));
doc.put(DOC_NDOC, mask_riga.get_long(S_NDOC));
doc.edit();
}
break;
default: default:
break; break;
} }

View File

@ -31,11 +31,13 @@
#define S_DATAPROD_LAV 112 #define S_DATAPROD_LAV 112
#define S_QTAPROD_LAV 113 #define S_QTAPROD_LAV 113
#define S_COLORE 114 #define S_COLORE 114
#define S_DATAPROD_COL 115 #define S_DATAPROD_COL_1 115
#define S_QTAPROD_COL 116 #define S_QTAPROD_COL_1 116
#define S_CODNUM 117 #define S_DATAPROD_COL_2 117
#define S_ANNO 118 #define S_QTAPROD_COL_2 118
#define S_PROVV 119 #define S_CODNUM 119
#define S_ANNO 120
#define S_PROVV 121
#define S_DESMAG 133 #define S_DESMAG 133
#define S_DESIVA 140 #define S_DESIVA 140

View File

@ -240,17 +240,23 @@ TOOLBAR "topbar" 0 -3 0 3
BUTTON DLG_OK 10 2 BUTTON DLG_OK 10 2
BEGIN BEGIN
PROMPT -13 -11 "" PROMPT -14 -11 ""
END END
BUTTON DLG_DELREC 10 2 BUTTON DLG_DELREC 10 2
BEGIN BEGIN
PROMPT -23 -11 "" PROMPT -24 -11 ""
END END
BUTTON DLG_CANCEL 10 2 BUTTON DLG_CANCEL 10 2
BEGIN BEGIN
PROMPT -33 -11 "" PROMPT -34 -11 ""
END
BUTTON DLG_USER 10 2
BEGIN
PROMPT -44 -11 "Collega"
PICTURE BMP_LINK
END END
ENDPAGE ENDPAGE
@ -400,6 +406,8 @@ END
NUMBER S_QTAPROD_LAV 13 5 NUMBER S_QTAPROD_LAV 13 5
BEGIN BEGIN
PROMPT 1 9 "Qta prod. Lav. " PROMPT 1 9 "Qta prod. Lav. "
VALIDATE 14 1 IF(#S_DATAPROD_LAV=0,0,IF(S_QTAPROD_LAV=0,#S_QTA,#S_QTAPROD_LAV))
DRIVENBY S_DATAPROD_LAV
FIELD QTAGG2 FIELD QTAGG2
END END
@ -427,54 +435,70 @@ BEGIN
COPY OUTPUT S_COLORE COPY OUTPUT S_COLORE
END END
DATA S_DATAPROD_COL DATA S_DATAPROD_COL_1
BEGIN BEGIN
PROMPT 1 11 "Data prod. Col. " PROMPT 1 11 "Data prod. Col.1"
FIELD DATACONS FIELD DATACONS
END END
NUMBER S_QTAPROD_COL 13 5 NUMBER S_QTAPROD_COL_1 13 5
BEGIN BEGIN
PROMPT 1 12 "Qta prod. Col. " PROMPT 1 12 "Qta prod. Col.1 "
VALIDATE 14 1 IF(#S_DATAPROD_COL_1=0,0,IF(#S_QTAPROD_COL_1=0,#S_QTA,#S_QTAPROD_COL_1))
DRIVENBY S_DATAPROD_COL_1
FIELD QTAGG1 FIELD QTAGG1
END END
DATA S_DATAPROD_COL_2
BEGIN
PROMPT 1 13 "Data prod. Col.2"
FIELD CODAGG1
END
NUMBER S_QTAPROD_COL_2 13 5
BEGIN
PROMPT 1 14 "Qta prod. Col.2 "
VALIDATE 14 1 IF(#S_DATAPROD_COL_2=0,0,IF(#S_QTAPROD_COL_2=0,(#S_QTA-#S_QTAPROD_COL_1),#S_QTAPROD_COL_2))
DRIVENBY S_DATAPROD_COL_2
FIELD QTAGG3
END
GROUPBOX DLG_NULL 76 3 GROUPBOX DLG_NULL 76 3
BEGIN BEGIN
PROMPT 1 13 "@bChiave riga" PROMPT 1 15 "@bChiave riga"
END END
STRING S_CODNUM 4 STRING S_CODNUM 4
BEGIN BEGIN
PROMPT 2 14 "Num. " PROMPT 2 16 "Num. "
FLAGS "D" FLAGS "D"
FIELD CODNUM FIELD CODNUM
END END
NUMBER S_ANNO 4 NUMBER S_ANNO 4
BEGIN BEGIN
PROMPT 13 14 "Anno " PROMPT 13 16 "Anno "
FLAGS "D" FLAGS "D"
FIELD ANNO FIELD ANNO
END END
STRING S_PROVV 1 STRING S_PROVV 1
BEGIN BEGIN
PROMPT 24 14 "P " PROMPT 24 16 "P "
FLAGS "D" FLAGS "D"
FIELD PROVV FIELD PROVV
END END
NUMBER S_NDOC 7 NUMBER S_NDOC 7
BEGIN BEGIN
PROMPT 29 14 "N.doc. " PROMPT 29 16 "N.doc. "
FLAGS "D" FLAGS "D"
FIELD NDOC FIELD NDOC
END END
NUMBER S_NRIGA 3 NUMBER S_NRIGA 3
BEGIN BEGIN
PROMPT 46 14 "N.Riga " PROMPT 46 16 "N.Riga "
FLAGS "D" FLAGS "D"
FIELD NRIGA FIELD NRIGA
END END