Patch level : 10.0

Files correlati     : pd6342 pd6342a.msk
Ricompilazione Demo : [ ]
Commento            :
Correzioni di Guy


git-svn-id: svn://10.65.10.50/branches/R_10_00@20974 c028cbd2-c16b-5b4b-a496-9718f37d4682
This commit is contained in:
luca83 2010-10-08 08:56:25 +00:00
parent d21df8023e
commit 2bac2c1e54
3 changed files with 70 additions and 69 deletions

View File

@ -1,10 +1,4 @@
#include <applicat.h>
#include <automask.h>
#include <defmask.h>
#include <execp.h>
#include <relation.h>
#include <reprint.h>
#include <reputils.h>
#include "pd6342400a.h"
#include "../ca/calib01.h"
@ -43,7 +37,7 @@ class TQuadra_movana_msk: public TAutomask
short _scms_sid, _scms_lid;
short _sfase_sid, _sfase_lid;
short _sconto_sid, _sconto_lid;
protected:
void costruisci_sheet(TSheet_field& s, const short dlg);
void get_row_anal_fields(TToken_string& row, TString& cdc, TString& cms, TString& fase, TString& codconto, const short sdlg);
@ -53,9 +47,7 @@ protected:
void calcola_totale(TSheet_field& sheet);
void riempi_sheets();
void sposta_a_destra();
void sposta_a_sinistra();
void crea_riga_quadratura();
void registra();
@ -360,38 +352,6 @@ void TQuadra_movana_msk::riempi_sheets()
calcola_totale(rs);
}
void TQuadra_movana_msk::sposta_a_destra()
{
TSheet_field& ls = sfield(F_MOVNNQUAD);
TToken_string& lrow = ls.row(ls.selected());
TSheet_field& rs = sfield(F_MOVQUAD);
TToken_string& rrow = rs.row(-1);
rrow = lrow;
ls.destroy(ls.selected());
rs.force_update();
calcola_totale(rs);
}
void TQuadra_movana_msk::sposta_a_sinistra()
{
TSheet_field& rs = sfield(F_MOVQUAD);
TToken_string& rrow = rs.row(rs.selected());
TSheet_field& ls = sfield(F_MOVNNQUAD);
TToken_string& lrow = ls.row(-1);
lrow = rrow;
rs.destroy(rs.selected());
ls.force_update();
calcola_totale(rs);
}
void TQuadra_movana_msk::crea_riga_quadratura()
{
TSheet_field& rs = sfield(F_MOVQUAD);
@ -438,7 +398,7 @@ void TQuadra_movana_msk::crea_riga_quadratura()
calcola_totale(rs);
}
TQuadra_movana_msk::TQuadra_movana_msk() : TAutomask("pd6342400a")
TQuadra_movana_msk::TQuadra_movana_msk() : TAutomask("pd6342400a")
{
disable(DLG_CERCA);
@ -482,11 +442,13 @@ TQuadra_movana_msk::TQuadra_movana_msk() : TAutomask("pd6342400a")
//non si può lavorare sullo coordinata sinistra perché se si modifica si incazza come una biscia!
ls.get_rect(srect);
srect.right = (wrect.left + wrect.right ) / 2 - CHARX;
srect.bottom = wrect.bottom;
ls.set_rect(srect);
//sistema le coordinate dello sheet di destra
rs.get_rect(srect);
srect.right = wrect.right;
srect.bottom = wrect.bottom;
rs.set_rect(srect);
}
@ -568,7 +530,7 @@ bool TQuadra_movana_msk::on_field_event(TOperable_field& o, TField_event e, long
switch(o.dlg())
{
case DLG_CERCA:
if(e == fe_button)
if(e == fe_button && check_fields())
{
riempi_sheets();
return false;
@ -608,21 +570,15 @@ bool TQuadra_movana_msk::on_field_event(TOperable_field& o, TField_event e, long
}
break;
case DLG_USER:
if(e == fe_button)
if(e == fe_button && jolly > 0)
{
switch(jolly)
{
case 1: sposta_a_destra(); break;
case 2: sposta_a_sinistra(); break;
default: break;
}
return false;
const short id = o.mask().get_sheet()->dlg(); // id del mio sheet
send_key(K_CTRL+'-', id); // simulo la cancellazione della riga corrente
}
break;
case F_NUMREGCG:
if(e == fe_modify)
{
int cazzone = get_int(F_NUMREGCG);
if(get(F_NUMREGCG).full())
enable(DLG_CERCA);
else
@ -634,8 +590,26 @@ bool TQuadra_movana_msk::on_field_event(TOperable_field& o, TField_event e, long
break;
case F_MOVNNQUAD:
case F_MOVQUAD:
if(e == se_query_add)
if (e == se_query_add) // Per riempire lo sheet devo simulare la pressione di "Cerca"
{
TSheet_field& ls = (TSheet_field&)o;
TSheet_field& rs = sfield(F_MOVNNQUAD + F_MOVQUAD - o.dlg());
if (ls.empty() && rs.empty())
send_key(K_SPACE, DLG_CERCA);
return false;
}
if (e == se_query_del)
{
TSheet_field& ls = (TSheet_field&)o;
TSheet_field& rs = sfield(F_MOVNNQUAD + F_MOVQUAD - o.dlg());
const TToken_string& row = ls.row(ls.selected());
rs.row(-1) = row;
rs.force_update();
rs.select(rs.items()-1);
calcola_totale(o.dlg() == F_MOVNNQUAD ? rs : ls);
}
break;
default: break;
}
return true;

View File

@ -9,8 +9,9 @@
#define F_CDC2 208
#define F_CDC3 209
#define F_CDC4 210
#define F_MOVNNQUAD 211
#define F_MOVQUAD 212
#define F_MOVNNQUAD 311
#define F_MOVQUAD 312
#define DLG_CERCA 801
#define DLG_SALVA 802

View File

@ -52,30 +52,30 @@ END
NUMBER F_NUMREGCG 7
BEGIN
PROMPT 2 4 "Mov. contabile "
USE LF_MOV
SELECT TOTDOC>0
USE LF_MOV SELECT TOTDOC>0
INPUT NUMREG F_NUMREGCG
DISPLAY "Numreg" NUMREG
DISPLAY "Descrizione@50" DESCR
DISPALY "Totale documento" TOTDOC
DISPLAY "Totale documento@R" TOTDOC
OUTPUT F_NUMREGCG NUMREG
OUTPUT F_DESREGCG DESCR
OUTPUT F_TOTDOC TOTDOC
CHECKTYPE REQUIRED
END
STRING F_DESREGCG 47
STRING F_DESREGCG 50 47
BEGIN
PROMPT 30 4 ""
FLAGS "D"
END
NUMBER F_TOTDOC 18 3
CURRENCY F_TOTDOC 18
BEGIN
PROMPT 2 5 "Tot. da quadrare "
FLAGS "D"
END
NUMBER F_TOTRIGHE 18 3
CURRENCY F_TOTRIGHE 18
BEGIN
PROMPT 42 5 "Tot. righe "
FLAGS "D"
@ -305,17 +305,30 @@ BEGIN
FLAGS "D"
END
BUTTON DLG_USER 2 2
BEGIN
PROMPT 200 200 ""
END
ENDPAGE
TOOLBAR "" 0 0 0 2
BUTTON DLG_USER 2 2
BUTTON DLG_OK 2 2
BEGIN
PROMPT 3 1 "Sposta"
PICTURE BMP_LINK
PROMPT 1 1 ""
END
#include <stdbar.h>
BUTTON DLG_DELREC 2 2
BEGIN
PROMPT 2 1 "Sposta"
PICTURE BMP_LINK
END
BUTTON DLG_CANCEL 2 2
BEGIN
PROMPT 3 1 ""
END
ENDPAGE
ENDMASK
@ -487,17 +500,30 @@ BEGIN
FLAGS "D"
END
BUTTON DLG_USER 2 2
BEGIN
PROMPT 200 200 ""
END
ENDPAGE
TOOLBAR "" 0 0 0 2
BUTTON DLG_USER 2 2
BUTTON DLG_OK 2 2
BEGIN
PROMPT 3 1 "Sposta"
PROMPT 1 1 ""
END
BUTTON DLG_DELREC 2 2
BEGIN
PROMPT 2 1 "Sposta"
PICTURE BMP_LINK
END
#include <stdbar.h>
BUTTON DLG_CANCEL 2 2
BEGIN
PROMPT 3 1 ""
END
ENDPAGE
ENDMASK