Patch level : 2.0 504
Files correlati : cg0.exe cg3.exe cg3700a.msk Ricompilazione Demo : [ ] Commento : EP20085 Non riesco a richiamare, perché non viene nemmeno visualizzato fra quelli esistenti, un registro inserito nella tabella registri con codice alfanumerico (es.VE1) EP20087 Lavoro col mouse: inserisco un nuovo movimento con causale V01 (o in generale con qualsiasi causale) nella pagina testata, seleziono con mouse la descrizione della causale e clicco su "modifica/copia". Entro nella tebella descrizioni aggiuntive (come per aggiungerne una nuova) mi posiziono sul campo descrizione e vado su (modifica/incolla): il testo non viene copiato e quando esco dalla maschera errore EP20090 Mancano le ricerche sui campi registri e fornitori git-svn-id: svn://10.65.10.50/trunk@11255 c028cbd2-c16b-5b4b-a496-9718f37d4682
This commit is contained in:
parent
38f1905197
commit
405617dfae
@ -844,7 +844,7 @@ void TCaus_app::sheet2ini(TSheet_field& sheet,TConfig& ini)
|
||||
|
||||
void TCaus_app::init_mask(TMask& m)
|
||||
{
|
||||
m.set(F_ANNOES, _anno_iva);
|
||||
m.set(F_ANNOES, anno_iva());
|
||||
carica_righe_libere();
|
||||
}
|
||||
|
||||
@ -855,17 +855,20 @@ void TCaus_app::init_query_mode(TMask& m)
|
||||
|
||||
void TCaus_app::on_config_change()
|
||||
{
|
||||
TConfig conf(CONFIG_DITTA);
|
||||
TConfig conf(CONFIG_DITTA, "cg");
|
||||
|
||||
_saldaconto = conf.get_bool("GesSal");
|
||||
_valuta = conf.get_bool("GesVal");
|
||||
|
||||
const int questanno = TDate(TODAY).year();
|
||||
_anno_iva = (int)conf.get_long("AnLiIv", NULL, -1, questanno);
|
||||
_anno_iva = 0;
|
||||
TTable reg("REG");
|
||||
if (reg.last() == NOERR)
|
||||
_anno_iva = atoi(reg.get("CODTAB").left(4));
|
||||
if (_anno_iva <= 0)
|
||||
{
|
||||
_anno_iva = questanno;
|
||||
conf.set("AnLiIv", questanno);
|
||||
_anno_iva = conf.get_int("AnLiIv");
|
||||
if (_anno_iva <= 0)
|
||||
_anno_iva = TDate(TODAY).year();
|
||||
}
|
||||
|
||||
_msk->show(F_TIPO_MOV_1, saldaconto());
|
||||
|
@ -36,7 +36,6 @@ bool annoes_handler(TMask_field&, KEY);
|
||||
bool data_inizio (TMask_field&, KEY);
|
||||
bool data_fine (TMask_field&, KEY);
|
||||
|
||||
|
||||
class TListaMov_application : public TPrintapp
|
||||
{
|
||||
friend bool filter_func (const TRelation *);
|
||||
@ -84,6 +83,8 @@ class TListaMov_application : public TPrintapp
|
||||
bool _cdc_only, _print_cdc;
|
||||
TDecoder _simbval, _descdoc;
|
||||
|
||||
static const char* err_msg[];
|
||||
|
||||
protected:
|
||||
virtual void preprocess_header();
|
||||
virtual bool preprocess_page(int,int);
|
||||
@ -127,6 +128,37 @@ public:
|
||||
virtual ~TListaMov_application() {}
|
||||
};
|
||||
|
||||
const char* TListaMov_application::err_msg[] = {
|
||||
TR("La data operazione non appartiene a nessun esercizio"),
|
||||
TR("Anno IVA non compatibile con data operazione"),
|
||||
TR("Data operazione successiva all'esercizio di competenza"),
|
||||
TR("Movimento con competenza anno precedente"),
|
||||
TR("La data di competenza non appartiene a nessun esercizio"),
|
||||
TR("Data competenza incompatibile con data operazione"),
|
||||
TR("Esercizio incompatibile con data competenza"),
|
||||
TR("Codice causale non presente in tabella"),
|
||||
TR("Codice causale sospeso"),
|
||||
TR("Nella causale e' stato attivato il segnale non va in allegato"),
|
||||
TR("Tipo documento non corrisponde a quello indicato in causale"),
|
||||
TR("Tipo documento non presente in tabella"),
|
||||
TR("Codice registro non corrisponde a quello indicato in causale"),
|
||||
TR("Codice registro non presente in tabella"),
|
||||
TR("Codice registro sospeso"),
|
||||
TR("Tipo registro incompatibile con tipo documento"),
|
||||
TR("Non indicato codice cliente/fornitore"),
|
||||
TR("Tipo cliente/fornitore non compatibile con tipo registro"),
|
||||
TR("Codice cliente/fornitore sospeso"),
|
||||
TR("Nel cliente/fornitore e' stato attivato il segnale: non va in allegato"),
|
||||
TR("Indicato codice C/F per allegato che richiama se stesso"),
|
||||
TR("Indicato codice C/F per allegato sospeso"),
|
||||
TR("C/F per allegato riporta un altro C/F per allegato"),
|
||||
TR("Indicato codice C/F per allegato con segnale: non va in allegato"),
|
||||
TR("Indicato codice C/F per allegato non presente in anagrafica"),
|
||||
TR("Codice cliente/fornitore non presente in anagrafica"),
|
||||
TR("Movimento con data competenza diversa da data operazione")};
|
||||
|
||||
|
||||
|
||||
HIDDEN inline TListaMov_application & app()
|
||||
{ return (TListaMov_application&)main_app();}
|
||||
|
||||
|
@ -4,11 +4,11 @@
|
||||
// CG3 -6 I ==> Lista fatture con iva indetrabile
|
||||
// CG3 -6 N ==> Lista fatture intracomunitarie
|
||||
//
|
||||
#include <defmask.h>
|
||||
#include <mask.h>
|
||||
#include <printapp.h>
|
||||
#include <recarray.h>
|
||||
#include <sheet.h>
|
||||
#include <defmask.h>
|
||||
|
||||
#include "cg3.h"
|
||||
#include "cg3700a.h"
|
||||
@ -52,6 +52,8 @@ class TLista_fatture : public TPrintapp
|
||||
long _numregprec; // Per la stampa di piu' righe di uno stesso documento
|
||||
tipo_st _tipo; // Tipo di stampa
|
||||
TArray_sheet* _ditte; // Sheet di selezione ditte
|
||||
long _unica_ditta;
|
||||
|
||||
TAssoc_array _intra_items;// Array ordinato (per codice IVA) dei totali per fatture INTRA
|
||||
long _from_cf, // Estremi selezione clienti/fornitori
|
||||
_to_cf;
|
||||
@ -178,6 +180,12 @@ bool TLista_fatture::date_handler(TMask_field& f, KEY key)
|
||||
TMask& m = f.mask();
|
||||
const TDate da(m.get_date(FLD_DATE_FROM));
|
||||
const TDate a(m.get_date(FLD_DATE_TO));
|
||||
|
||||
if (da.ok())
|
||||
m.set(FLD_ANNO, da.year()); else
|
||||
if (a.ok())
|
||||
m.set(FLD_ANNO, a.year());
|
||||
|
||||
if (a.ok() && da.ok()) // Solo se sono entrambi compilati
|
||||
{
|
||||
if (da > a)
|
||||
@ -337,13 +345,8 @@ void TLista_fatture::set_choice_limits(TMask& m)
|
||||
}
|
||||
if (first != -1)
|
||||
m.set(FLD_DFR, first);
|
||||
//else
|
||||
// m.reset(FLD_DFR);
|
||||
|
||||
if (last != -1)
|
||||
m.set(FLD_DTO, last);
|
||||
//else
|
||||
// m.reset(FLD_DFR);
|
||||
const long checked = _ditte->checked();
|
||||
m.enable(DLG_PRINT,checked > 0);
|
||||
m.set(FLD_SELECTED, checked);
|
||||
@ -352,9 +355,12 @@ void TLista_fatture::set_choice_limits(TMask& m)
|
||||
void TLista_fatture::build_ditte_sheet()
|
||||
{
|
||||
_ditte->destroy();
|
||||
TLocalisamfile nditte(LF_NDITTE);
|
||||
|
||||
for (nditte.first(); nditte.good(); nditte.next())
|
||||
long first_enabled = 0;
|
||||
long firms_enabled = 0;
|
||||
|
||||
TLocalisamfile nditte(LF_NDITTE);
|
||||
for (int err = nditte.first(); err == NOERR; err = nditte.next())
|
||||
{
|
||||
TToken_string* d = new TToken_string(64);
|
||||
d->add(" ");
|
||||
@ -368,8 +374,14 @@ void TLista_fatture::build_ditte_sheet()
|
||||
if (unselectable)
|
||||
_ditte->disable_row(pos);
|
||||
else
|
||||
{
|
||||
_ditte->enable_row(pos);
|
||||
}
|
||||
if (firms_enabled++ == 0)
|
||||
first_enabled = pos;
|
||||
}
|
||||
}
|
||||
|
||||
_unica_ditta = (firms_enabled == 1) ? first_enabled : -1;
|
||||
}
|
||||
|
||||
bool TLista_fatture::preprocess_page(int file, int counter)
|
||||
@ -698,6 +710,12 @@ bool TLista_fatture::set_print(int m)
|
||||
add_file(LF_RMOVIVA);
|
||||
set_real_picture("###.###.###.###");
|
||||
set_magic_currency(TRUE);
|
||||
|
||||
if (_unica_ditta >= 0)
|
||||
{
|
||||
_ditte->check(_unica_ditta);
|
||||
set_choice_limits(msk);
|
||||
}
|
||||
|
||||
switch (_tipo)
|
||||
{
|
||||
|
@ -10,6 +10,7 @@
|
||||
#define FLD_TO_REG 109
|
||||
#define FLD_FROM_CAU 110
|
||||
#define FLD_TO_CAU 111
|
||||
#define FLD_ANNO 112
|
||||
|
||||
#define BUT_SEL 201
|
||||
#define BUT_ANN 202
|
||||
|
@ -54,12 +54,31 @@ NUMBER FLD_FROM_FOR 6
|
||||
BEGIN
|
||||
PROMPT 1 6 "Da fornitore "
|
||||
GROUP 1
|
||||
USE LF_CLIFO
|
||||
INPUT TIPOCF "F"
|
||||
INPUT CODCF FLD_FROM_FOR
|
||||
DISPLAY "Codice" CODCF
|
||||
DISPLAY "Ragione Sociale@50" RAGSOC
|
||||
OUTPUT FLD_FROM_FOR CODCF
|
||||
CHECKTYPE SEARCH
|
||||
END
|
||||
|
||||
NUMBER FLD_TO_FOR 6
|
||||
BEGIN
|
||||
PROMPT 1 7 "A fornitore "
|
||||
GROUP 1
|
||||
COPY USE FLD_FROM_FOR
|
||||
INPUT TIPOCF "F"
|
||||
INPUT CODCF FLD_TO_FOR
|
||||
COPY DISPLAY FLD_FROM_FOR
|
||||
OUTPUT FLD_TO_FOR CODCF
|
||||
CHECKTYPE SEARCH
|
||||
END
|
||||
|
||||
NUMBER FLD_ANNO 4
|
||||
BEGIN
|
||||
PROMPT 35 5 ""
|
||||
FLAGS "AH"
|
||||
END
|
||||
|
||||
STRING FLD_FROM_REG 3
|
||||
@ -67,6 +86,13 @@ BEGIN
|
||||
PROMPT 35 6 "Da registro "
|
||||
FLAGS "UZ"
|
||||
GROUP 1
|
||||
USE REG
|
||||
INPUT CODTAB[1,4] FLD_ANNO SELECT
|
||||
INPUT CODTAB[5,7] FLD_FROM_REG
|
||||
DISPLAY "Codice" CODTAB[5,7]
|
||||
DISPLAY "Descrizione@50" S0
|
||||
OUTPUT FLD_FROM_REG CODTAB[5,7]
|
||||
CHECKTYPE SEARCH
|
||||
END
|
||||
|
||||
STRING FLD_TO_REG 3
|
||||
@ -74,6 +100,12 @@ BEGIN
|
||||
PROMPT 35 7 "A registro "
|
||||
FLAGS "UZ"
|
||||
GROUP 1
|
||||
COPY USE FLD_FROM_REG
|
||||
INPUT CODTAB[1,4] FLD_ANNO SELECT
|
||||
INPUT CODTAB[5,7] FLD_TO_REG
|
||||
COPY DISPLAY FLD_FROM_REG
|
||||
OUTPUT FLD_TO_REG CODTAB[5,7]
|
||||
CHECKTYPE SEARCH
|
||||
END
|
||||
|
||||
STRING FLD_FROM_CAU 3
|
||||
@ -81,6 +113,12 @@ BEGIN
|
||||
PROMPT 1 6 "Da causale "
|
||||
FLAGS "HUZ"
|
||||
GROUP 2
|
||||
USE LF_CAUSALI
|
||||
INPUT CODCAUS FLD_FROM_CAU
|
||||
DISPLAY "Codice" CODCAUS
|
||||
DISPLAY "Descrizione@50" DESCR
|
||||
OUTPUT FLD_FROM_CAU CODCAUS
|
||||
CHECKTYPE SEARCH
|
||||
END
|
||||
|
||||
STRING FLD_TO_CAU 3
|
||||
@ -88,6 +126,11 @@ BEGIN
|
||||
PROMPT 1 7 "A causale "
|
||||
FLAGS "HUZ"
|
||||
GROUP 2
|
||||
COPY USE FLD_FROM_CAU
|
||||
INPUT CODCAUS FLD_TO_CAU
|
||||
COPY DISPLAY FLD_FROM_CAU
|
||||
OUTPUT FLD_TO_CAU CODCAUS
|
||||
CHECKTYPE SEARCH
|
||||
END
|
||||
|
||||
BUTTON DLG_PRINT 10 2
|
||||
|
@ -7,11 +7,9 @@
|
||||
#include <diction.h>
|
||||
#include <progind.h>
|
||||
#include <relation.h>
|
||||
|
||||
#include <tabutil.h>
|
||||
#include <utility.h>
|
||||
#include <xvtility.h>
|
||||
#include <diction.h>
|
||||
|
||||
#include "cglib01.h"
|
||||
#include "cglib02.h"
|
||||
@ -167,17 +165,23 @@ real TSaldo::calcola_saldo_iniziale(int g,int c,long s,int indbil)
|
||||
return _saldo_iniziale;
|
||||
}
|
||||
|
||||
const char* TSaldo::causale_chiusura_es()
|
||||
/*
|
||||
const TString& TSaldo::causale_chiusura_es() const
|
||||
{
|
||||
TConfig conf(CONFIG_DITTA);
|
||||
return conf.get("CoCaCh");
|
||||
TConfig conf(CONFIG_DITTA, "cg");
|
||||
TString& tmp = get_tmp_string();
|
||||
tmp = conf.get("CoCaCh");
|
||||
return tmp;
|
||||
}
|
||||
|
||||
const char* TSaldo::causale_apertura_es()
|
||||
const TString& TSaldo::causale_apertura_es() const
|
||||
{
|
||||
TConfig conf(CONFIG_DITTA);
|
||||
return conf.get("CoCaAp");
|
||||
TConfig conf(CONFIG_DITTA, "cg");
|
||||
TString& tmp = get_tmp_string();
|
||||
tmp = conf.get("CoCaAp");
|
||||
return tmp;
|
||||
}
|
||||
*/
|
||||
|
||||
bool TSaldo::leggi_mov(long nr)
|
||||
{
|
||||
@ -228,11 +232,11 @@ bool TSaldo::data_limite_bilancio(int bilancio, int g, int c, long s, const TDat
|
||||
for (cur = 0L; cur.pos() < items; ++cur)
|
||||
{
|
||||
const long num_reg = rmov.get_long(RMV_NUMREG);
|
||||
TDate data_mov;
|
||||
|
||||
// Leggo la testata
|
||||
leggi_mov(num_reg);
|
||||
if (!leggi_mov(num_reg)) // Leggo la testata
|
||||
continue; // Evita righe orfane!
|
||||
|
||||
TDate data_mov;
|
||||
if (bilancio == DataLimite)
|
||||
data_mov = _datacomp;
|
||||
else
|
||||
|
@ -105,8 +105,11 @@ public:
|
||||
void set_annoes (int anno) { _annoes = anno; }
|
||||
|
||||
bool causale_mov(long, const TDate&, const TDate&, TString&);
|
||||
const char* causale_chiusura_es();
|
||||
const char* causale_apertura_es();
|
||||
|
||||
/* Inutilizzate!
|
||||
const TString& causale_chiusura_es() const;
|
||||
const TString& causale_apertura_es() const;
|
||||
*/
|
||||
|
||||
bool ultima_immissione_bilancio(int anno,int g,int c,long s,int indbil,int prov,bool saldo_chiusura = TRUE);
|
||||
bool ultima_immissione_verifica(int anno,int g,int c,long s,int indbil,int prov);
|
||||
|
Loading…
x
Reference in New Issue
Block a user