Collegamento cg <-> fe

git-svn-id: svn://10.65.10.50/branches/R_10_00@22901 c028cbd2-c16b-5b4b-a496-9718f37d4682
This commit is contained in:
guy 2013-12-13 09:24:56 +00:00
parent a9517e3cf5
commit 6c28b4a0ab
17 changed files with 4262 additions and 4290 deletions

View File

@ -203,7 +203,7 @@ void TPianoconti_app::init_insert_mode(TMask& m)
m.show(FLD_CM1_IVACOMP, indbil == RICAVI);
m.show(FLD_CM1_DESCIVACOMP, indbil == RICAVI);
}
m.show(FLD_CM1_RICSER, indbil == PASSIVITA || indbil == RICAVI);
// m.show(FLD_CM1_RICSER, indbil == PASSIVITA || indbil == RICAVI); // Sempre visibile per spesometro dal 9-10-2013
if (conto != 0)
{
m.enable(FLD_CM1_SEZIVD, ivd_enable);

View File

@ -420,11 +420,11 @@ END
LIST FLD_CM1_RICSER 1 18
BEGIN
PROMPT 1 12 "Ricavi per servizi "
PROMPT 1 12 "Merce / Servizi "
FIELD RICSER
FLAGS "H"
ITEM "0|Altre attivita'"
ITEM "0|"
ITEM "1|Servizi"
ITEM "2|Merce"
END
STRING FLD_CM1_IVACOMP 4

View File

@ -288,7 +288,7 @@ BEGIN
CHECKTYPE NORMAL
END
NUMBER F_ALLEG 1
STRING F_ALLEG 1
BEGIN
PROMPT 2 14 "Tipo cliente/fornitore "
FIELD ALLEG
@ -305,6 +305,7 @@ BEGIN
ITEM "7|Ente pubblico"
ITEM "8|Fallimento/proc.concorsuale"
ITEM "9|Estero NON CEE"
ITEM "C|Scheda carburante"
OUTPUT F_ALLEG
END

View File

@ -585,14 +585,14 @@ void TPrimanota_application::init_mask(TMask& m)
m.show(-2, forg);
}
m.hide(-7); // Nascondi tutti i campi del modulo FE (compreso FE_MODPAG)
m.hide(-7); // Nascondi tutti i campi del modulo FE
if (corrisp)
m.hide(F_STATOPAIV);
else
{
if (has_module(FEAUT))
m.show(FE_MODPAG); // Mostro FE_MODPAG solo se strettamente necessario
m.show(FE_NOLEGGIO); // Mostro FE_MODPAG solo se strettamente necessario
}
// Show/Hide campi valuta: F_VALUTAINTRA, F_CAMBIOINTRA, F_CORRISPETTIVO, F_CORRVAL (GROUP 4)
@ -716,8 +716,8 @@ bool TPrimanota_application::can_I_write(const TRelation* rel) const
<< "La preghiamo di contattare Sirio informatica e sistemi ai seguenti riferimenti:</p><br/>"
<< "<ul><li>Sara Coppini, segreteria commerciale: <br />"
<< "<a href=mailto:scoppini@sirio-is.it>scoppini@sirio-is.it</a> Tel. 348-9897249</li>"
<< "<li>Morena Martini, responsabile commerciale canale: <br />"
<< "<a href=mailto:mmartini@sirio-is.it>mmartini@sirio-is.it</a> Tel. 349-3421433</li></ul>"
<< "<li>Casella vocale Hotline Campo: <br />"
<< "<a href=mailto:hotlinecampo@sirio-is.it>hotlinecampo@sirio-is.it</a> Tel. 0236583540</li></ul>"
<< "</body></html>";
warning_box(html);
}
@ -2261,28 +2261,28 @@ bool TPrimanota_application::link_intra(const TMask& m, const char* action)
TString str; // Stringa jolly di lavoro
str.format("%d", LF_INTRA);
intro.set_paragraph(str);
intro.set("NUMREG", m.get(F_NUMREG));
intro.set("DATAREG", m.get(F_DATAREG));
intro.set(MOV_NUMREG, m.get(F_NUMREG));
intro.set(MOV_DATAREG, m.get(F_DATAREG));
if (m.field(F_CLIENTE).shown())
{
intro.set("TIPOMOV", "C");
intro.set("TIPOCF", "C");
intro.set("CODCF", m.get(F_CLIENTE));
intro.set(MOV_TIPOMOV, "C"); // Cessione
intro.set("TIPOCF", "C"); // Cliente
intro.set(MOV_CODCF, m.get(F_CLIENTE));
}
else
{
intro.set("TIPOMOV", "A");
intro.set("TIPOCF", "F");
intro.set("CODCF", m.get(F_FORNITORE));
intro.set(MOV_TIPOMOV, "A"); // Acquisto
intro.set("TIPOCF", "F"); // Fornitore
intro.set(MOV_CODCF, m.get(F_FORNITORE));
}
// Controlla flag sulla causale
const bool valintra = causale().valintra();
if (valintra)
{
intro.set("CODVAL", m.get(F_VALUTAINTRA));
intro.set("CAMBIO", m.get(F_CAMBIOINTRA));
intro.set(MOV_CODVAL, m.get(F_VALUTAINTRA));
intro.set(MOV_CAMBIO, m.get(F_CAMBIOINTRA));
}
// Inserisci il totale documento solo in inserimento!
@ -2291,10 +2291,10 @@ bool TPrimanota_application::link_intra(const TMask& m, const char* action)
real totdoc = m.get_real(valintra ? F_CORRISPETTIVO : F_IMPONIBILI);
if (test_swap(false))
totdoc = -totdoc;
intro.set("TOTDOC", totdoc.string());
intro.set(MOV_TOTDOC, totdoc.string());
}
else
intro.remove("TOTDOC"); // Evita di cambiare il valore preesistente
intro.remove(MOV_TOTDOC); // Evita di cambiare il valore preesistente
appname << "in0 -4 /i" << intrini;
}

View File

@ -28,10 +28,7 @@
#define F_COFICLIENTE 155
#define F_RICALTCLIENTE 156
#define FE_CONTRATTO 157
#define FE_MODPAG 158
#define FE_DATARETT 159
#define FE_NUMRETT 160
#define FE_NOLEGGIO 157
#define F_FORNITORE 161
#define F_RAGSOCFORNITORE 162

View File

@ -439,65 +439,17 @@ BEGIN
FLAGS "H"
END
LIST FE_MODPAG 1 16
LIST FE_NOLEGGIO 2 10
BEGIN
PROMPT 1 12 "Tipo "
ITEM "1|Non frazionato"
MESSAGE HIDE,FE_CONTRATTO|RESET,FE_CONTRATTO|SHOW,FE_DATARETT|SHOW,FE_NUMRETT
ITEM "2|Frazionato"
MESSAGE SHOW,FE_CONTRATTO|HIDE,FE_DATARETT|HIDE,FE_NUMRETT
ITEM "3|Periodico"
MESSAGE SHOW,FE_CONTRATTO|HIDE,FE_DATARETT|HIDE,FE_NUMRETT
PROMPT 1 12 "Tipo veicolo a noleggio (spesometro) "
ITEM " |Nessuno"
ITEM "A|Automobile"
ITEM "B|Camper"
ITEM "C|Altro"
ITEM "D|Diporto"
ITEM "E|Aeromobile"
FIELD NOLEGGIO
GROUP 7
FIELD MODPAG
MODULE fe
END
STRING FE_CONTRATTO 18
BEGIN
PROMPT 32 12 "Contratto di riferimento "
FLAGS "U"
FIELD CONTRATTO
USE &FECON
INPUT CODTAB[1,1] F_CLIFO SELECT
INPUT CODTAB[2,7] F_CLIENTE SELECT
INPUT CODTAB[8,25] FE_CONTRATTO
DISPLAY "Contratto" CODTAB[8,]
DISPLAY "Descrizione@50" S0
DISPLAY "Pagamento" S6
OUTPUT FE_CONTRATTO CODTAB[8,]
OUTPUT FE_MODPAG S6
CHECKTYPE REQUIRED
HELP "Inserire un codice contratto di importo non inferiore a 3000 Euro"
ADD RUN fe0 -1 &CON
GROUP 7
END
DATE FE_DATARETT
BEGIN
PROMPT 26 12 "Variazione al documento "
USE MOV KEY 3
INPUT TIPO F_CLIFO SELECT
INPUT CODCF F_CLIENTE SELECT
INPUT DATAREG FE_DATARETT
DISPLAY "Data reg.@10" DATAREG
DISPLAY "Numero@7" NUMDOC
DISPLAY "Num.Reg.@7" NUMREG
DISPLAY "Descrizione@50" DESCR
OUTPUT FE_DATARETT DATAREG
OUTPUT FE_NUMRETT NUMDOC
FIELD DATARETT
GROUP 7
END
STRING FE_NUMRETT 7
BEGIN
PROMPT 66 12 "N."
COPY ALL FE_DATARETT
CHECKTYPE SEARCH
FIELD NUMRETT
GROUP 7
FLAGS "U"
END
// Campi per saldaconto in valuta

View File

@ -260,7 +260,7 @@ int TMovimentoPN::registra(bool re, bool force)
// Aggiorna data registrazione e protocollo IVA sul registro
const TDate datareg(m.get(MOV_DATAREG));
if (reg.not_empty())
if (reg.full())
{
const long protiva = m.get_long(MOV_PROTIVA);
const long uprotiva = m.get_long(MOV_UPROTIVA);

View File

@ -826,7 +826,6 @@ TGrid_control::TGrid_control(
// Controlla se ci sono troppe colonne fisse
if ((f_width+max_width)*XI_FU_MULTIPLE > rct.right)
fixed_columns = 1;
long list_attr = XI_ATR_ENABLED | XI_ATR_VISIBLE;
// if (_read_only) list_attr |= XI_ATR_NAVIGATE;
@ -1092,8 +1091,8 @@ void TGrid_control::update_selection(XI_EVENT* xiev)
{
const bool is_curr = xiev->v.rec_request.data_rec == _cur_rec;
if (_read_only)
{
/*
{
/*
if (is_curr)
xiev->v.rec_request.attrib |= XI_ATR_SELECTED;
else
@ -1180,11 +1179,9 @@ bool TGrid_control::event_handler(XI_OBJ* itf, XI_EVENT *xiev)
{
if (xiev->v.select.column == 0)
{
if (_read_only)
{
refused = !select(rec);
}
else
// if (_read_only) // Commentato 8/11/2013 altrimenti non funziona più collegamento a cg2
// refused = !select(rec);
// else
{
if (rec == _cur_rec) // Simulo intercettazione doppio click
_grid->on_record_button(rec);
@ -1309,7 +1306,7 @@ XI_OBJ* TGrid_control::find_column(const char* head) const
int num = 0;
XI_OBJ** column = xi_get_member_list(_obj, &num);
TString80 text;
TString256 text;
int i;
for (i = num-1; i >= 0; i--)
{
@ -1708,9 +1705,9 @@ void TMastrini_grid::cell_request(long rec, short id, TGrid_cell& cell)
XI_OBJ* col = grid().find_column(short(1000+id%1000));
if (col != NULL)
{
TString80 head;
xi_get_text(col, head.get_buffer(), head.size());
cell = head;
TString256 str;
xi_get_text(col, str.get_buffer(), str.size());
cell = str;
}
return;

File diff suppressed because it is too large Load Diff

View File

@ -1142,7 +1142,7 @@ int TStampa_registri_app::setta_riga(int r, const TRigaiva& riga, real& tot1,
if (!riga._impostap.is_zero())
set_row(r, "@98g%r", &riga._impostap);
}
r++; // Incrementa sempre: cazzone!
r++; // Incrementa sempre!
tot1 += riga._imponibile;
tot2 += riga._imposta;

View File

@ -63,7 +63,6 @@ real indetraibile_al(const TString& codind, const TCausale& caus, int annodoc, i
int analizza_IVA(const real& imptot, const real& ivatot, const real perc_ind,
const bool corrispettivo, const bool iva_ind_al_costo, const TString& codiva,
real& imp_det, real& iva_det, real& imp_ind, real& iva_ind)
{
int flag = 0;

View File

@ -100,7 +100,7 @@ Item_09 = "Tracciabilit
[CGMENU_010]
Caption = "IVA"
Picture = <cg01>
Module = 5
Module = 7
Flags = ""
Item_01 = "Parametri liquidazione", "cg5 -3", "F"
Item_02 = "Liquidazione", "cg4 -2", "F"
@ -287,7 +287,5 @@ Module = 7
Flags = ""
Item_01 = "Comunicazione annuale dati IVA", "cg5 -7", "F"
Item_02 = "Quadro VT", "cg5 -8", "F"
Item_03 = "Elenco clienti\fornitori", "cg3 -8", "F"
Item_04 = "Comunicazione dati rilevanti", "fe0 -0", "F"
Item_05 = "Contratti per dati rilevanti", "fe0 -1 &CON", "F"
Item_06 = "Controllo archivi dati rilevanti", "fe0 -3", "F"
Item_03 = "Elenco clienti/fornitori", "cg3 -8", "F"
Item_04 = "Comunicazione Polivalente", "fe0 -0", "F"

View File

@ -792,11 +792,22 @@ int TRiga_partite::ultima_ratapagata() const
// Certified 100%
tipo_movimento TRiga_partite::tipo() const
{
const tipo_movimento tm = (tipo_movimento)(get_char(PART_TIPOMOV)-'0');
tipo_movimento tm = (tipo_movimento)(get_int(PART_TIPOMOV));
if (tm == tm_nessuno)
{
// Tento salvataggioin extremis
const int nriga = get_int(PART_NRIGA);
if (nriga == 1 && get_date(PART_DATADOC).ok())
tm = tm_fattura; else
if (nriga > 1 && get_date(PART_DATAPAG).ok())
tm = tm_pagamento;
#ifdef DBG
if (tm == tm_nessuno && get_int(PART_NRIGA) != TPartita::UNASSIGNED)
yesnofatal_box("Riga partite con un tipo losco.");
if (tm == tm_nessuno && nriga != TPartita::UNASSIGNED)
yesnofatal_box("Riga partite con un tipo losco.");
#endif
}
return tm;
}
@ -996,8 +1007,8 @@ TImporto TRiga_partite::importo(bool valuta, int mode) const
return i;
}
// Calcola l'esposto e l' esposto SBF
TImporto TRiga_partite::esposto(bool valuta, const TDate & data_scad, const TDate & data_rischio, bool & sbf) const
// Calcola l'esposto e l'esposto SBF
TImporto TRiga_partite::esposto(bool valuta, const TDate& data_scad, const TDate& data_rischio, bool & sbf) const
{
TImporto esposto;

View File

@ -1,3 +1,3 @@
22
0
$alleg|0|0|112|0|Comunicazione dati rilevanti|||
$alleg|0|0|137|0|Comunicazione Spesometro|||

View File

@ -1,5 +1,5 @@
22
16
27
ANNO|2|4|0|Anno IVA
PROGR|3|7|0|Progressivo
TIPOCF|1|1|0|Tipo <C>liente <F>ornitore
@ -8,14 +8,25 @@ OCFPI|1|16|0|Codice occasionale
FORZATURA|8|1|0|Forzatura a mano
IGNORA|2|2|0|Eventuale motivo per ignorare la riga (0 = da inviare)
DATAREG|5|8|0|Data registrazione (art. 6 d.P.R.n.633/1972)
NUMDOC|1|7|0|Numero Fattura (Obbligatorio se TIPOPE=1)
MODPAG|2|1|0|Modalità di pagamento (1=Non frazionato;2=Frazionato;3=Periodico)
NUMDOC|1|7|0|Numero Fattura
DATADOC|5|8|0|Data fattura
IMPORTO|4|12|2|Importo dovuto
IMPOSTA|4|12|2|Imposta
TIPOPE|2|1|0|Tipo operazione (1=Cessione;2=Acquisto)
CONTRATTO|1|18|0|Contratto
DATARETT|5|8|0|Data documento rettificato
NUMRETT|1|7|0|Numero documento rettificato
TIPOPE|1|2|0|Tipo operazione
MODPAG|2|1|0|Modalità di pagamento (1=Non frazionato;2=Frazionato;3=Periodico) (fino 2012)
CONTRATTO|1|18|0|Contratto (fino 2012)
DATARETT|5|8|0|Data documento rettificato (fino 2012)
NUMRETT|1|7|0|Numero documento rettificato (fino 2012)
NOLEGGIO|1|1|0|Tipo veicolo (A=Auto,B=Caravan;C=Altri;D=Diporto;E=Aeromobili) (dal 2013)
REVERSE|8|1|0|Reverse charge (dal 2013)
AUTOFATT|8|1|0|Autofattura (dal 2013)
SERVIZI|8|1|0|Acquisto servizi (dal 2013)
TURISMO|8|1|0|Operazione legate al turismo (dal 2013)
RIEPILOG|8|1|0|Fattura riepilogativa (dal 2013)
CARBURAN|8|1|0|Carta Carburanti (dal 2013)
ATTAGG|2|4|0|Operazioni attive aggregate (dal 2013)
PASAGG|2|4|0|Operazioni passive aggregate (dal 2013)
TIPOIVA|2|1|0|Tipo IVA (dal 2013)
3
ANNO+PROGR|
ANNO+TIPOCF+CODCF+OCFPI+PROGR|

View File

@ -1,3 +1,3 @@
23
0
$mov|0|0|471|0|Movimenti di prima nota|||
23
0
$mov|0|0|442|0|Movimenti di prima nota|||

View File

@ -1,5 +1,5 @@
23
55
52
ANNOES|9|4|0|Codice esercizio
NUMREG|3|7|0|Numero di operazione
DATAREG|5|8|0|Data operazione
@ -49,11 +49,8 @@ DNDOC|3|7|0|Documento originale NDOC
DATAINC|5|8|0|Data di incasso per liquidazione differita
LIQDIFF|8|1|0|Flag di movimento a liquidazione differita
IVAXCASSA|8|1|0|Flag di movimento IVA per cassa
MODPAG|2|1|0|Modalità di pagamento 1=Non frazionato; 2=Frazionato; 3=Periodico
CONTRATTO|1|18|0|Contratto con importo > 3000 Euro
DATARETT|5|8|0|Data documento rettificato
NUMRETT|1|7|0|Numero documento rettificato
ANNOFE|2|4|0|Anno invio definitivo dati rilevanti
NOLEGGIO|1|1|0|Tipo veicolo Auto, Camper, Altro, Diporto, aEreo
INVIOFE|5|8|0|Data invio definitivo dati rilevanti
CONTSEP|1|6|0|Contabilità separata
4
NUMREG|