diff --git a/ha/ha1300.cpp b/ha/ha1300.cpp index 84c1db9da..38cf9f5cc 100755 --- a/ha/ha1300.cpp +++ b/ha/ha1300.cpp @@ -296,7 +296,7 @@ protected: long check_cliente(const TString& str_codcf, TLog_report& log); void check_magazzino(const TString& codmag_age, TLog_report& log); void check_causale(TString& codcaus, TLog_report& log); - bool genera_incasso(TPartita& game, int nriga, int nrata, const TMovimentoPN& mov, TLog_report& log) const; + bool genera_incasso(TPartita& game, int nriga, int nrata, const TMovimentoPN& mov, const TBill& zio_agente, TLog_report& log) const; bool archivia_file_importato(const TString& dst_root_path, const TFilename& curr_fname, const TString& terminalino, TLog_report& log); //metodi di alto livello @@ -454,7 +454,7 @@ long TUpload2Campo::check_cliente(const TString& str_codcf, TLog_report& log) //aggiorna una partita con una nuova riga che riguarda l'incasso bool TUpload2Campo::genera_incasso(TPartita& game, int nriga, int nrata, - const TMovimentoPN& mov, TLog_report& log) const + const TMovimentoPN& mov, const TBill& zio_agente, TLog_report& log) const { TString msg; msg.format(FR(" %d della riga %d della partita %d/%s"), @@ -496,6 +496,16 @@ bool TUpload2Campo::genera_incasso(TPartita& game, int nriga, int nrata, new_pag.put(PAGSCA_ACCSAL, 'A'); new_pag.put(PART_IMPORTO, head.get_real(MOV_TOTDOC)); + + //richiesta di Hardy del 04-03-2011: aggiungere il conto agente in $pagsca gruppoc-contoc-sottocontc.. + //..ovvero il conto di contropartita sul pagamento + const int gruppoc = zio_agente.gruppo(); + const int contoc = zio_agente.conto(); + const long sottocontc = zio_agente.sottoconto(); + new_pag.put(PAGSCA_GRUPPOC, gruppoc); + new_pag.put(PAGSCA_CONTOC, contoc); + new_pag.put(PAGSCA_SOTTOCONTC, sottocontc); + //..ovvero nei gruppi di contropartita const TValuta valuta(head); game.modifica_pagamento(new_pag, valuta, true); return true; @@ -829,7 +839,7 @@ void TUpload2Campo::elabora_SI(THardy_upload_recordset& recset, TLog_report& log const int nriga = game.prima_fattura(); const int nrata = 1; //metodo magicissimo per l'aggiornamento della partita con l'incasso - genera_incasso(game, nriga, nrata, mov, log); + genera_incasso(game, nriga, nrata, mov, zio_agente, log); //alla fine della fiera scrive (se puņ) movimento e pagamento su partita if (_can_write)