Ejemplo n.º 1
0
void STOK_HIZMET_KARTI_FORMU::UPDATE_RECORD (int record_id)
{
    SQL_QUERY update_query(DB);

    update_query.PREPARE_UPDATE("stk_urunler","urun_id", "urun_kodu,urun_adi,"
                                "barkod_numarasi ,satis_fiyati ,"
                                "alis_fiyati ,urun_alis_doviz_id,"
                                "urun_satis_doviz_id ,aciklama ,"
                                "alis_kdv_orani ,"
                                "muh_hesap_id ,urun_temel_birimi ,"
                                "hizmet_turu, satis_kdv_orani ",
                                "urun_id = :urun_id");


    update_query.SET_VALUE(":urun_kodu"            , m_ui->lineEdit_hizmet_kodu->text());
    update_query.SET_VALUE(":urun_adi"             , m_ui->lineEdit_hizmet_ismi->text());
    update_query.SET_VALUE(":barkod_numarasi"      , m_ui->lineEdit_barkod_no->text());
    update_query.SET_VALUE(":satis_fiyati"         , m_ui->commaEdit_satis_fiyati->GET_DOUBLE());
    update_query.SET_VALUE(":alis_fiyati"          , m_ui->commaEdit_alis_fiyati->GET_DOUBLE());
    update_query.SET_VALUE(":urun_alis_doviz_id"   , DVZ_GET_DOVIZ_ID(m_ui->comboBox_alis_doviz_cinsi->currentText()));
    update_query.SET_VALUE(":urun_satis_doviz_id"  , DVZ_GET_DOVIZ_ID(m_ui->comboBox_satis_doviz_cinsi->currentText()));
    update_query.SET_VALUE(":aciklama"             , m_ui->limitedTextEdit->toPlainText());
    update_query.SET_VALUE(":alis_kdv_orani"       , QVariant(m_ui->comboBox_alis_kdv_orani->currentText()).toDouble());
    update_query.SET_VALUE(":satis_kdv_orani"      , QVariant(m_ui->comboBox_satis_kdv_orani->currentText()).toDouble());
    update_query.SET_VALUE(":muh_hesap_id"         , m_muh_hesap_id);
    update_query.SET_VALUE(":urun_temel_birimi"    , m_ui->lineEdit_hizmet_birimi->text());
    update_query.SET_VALUE(":hizmet_turu"          , STK_GET_HIZMET_TURU_ENUM(m_ui->comboBox_hizmet_turu->currentText()));
    update_query.SET_VALUE(":urun_id"              , record_id);

    update_query.UPDATE();

    QString log_detaylari = "Hizmet Kodu / Adı : " + m_ui->lineEdit_hizmet_kodu->text() + "  " + m_ui->lineEdit_hizmet_ismi->text();

    K9_LOG_KAYDI_EKLE ( FATURA_MODULU , LOG_FAT_HIZMETLER , LOG_ISLEM_UPDATE , log_detaylari);
}
Ejemplo n.º 2
0
BaseSqlListModel::BaseSqlListModel(QObject *parent) :
    AbstractListModel(parent),
    mRecords(),
    mconnectionName(),
    mStringQuery(),
    mSqlQuery(),
    mRoles(),
    m_tablename(),
    m_filtercmd(),
    m_customRoles()
{
    connect(this, SIGNAL(isFilteredChanged()), this, SLOT(update_query()));
}
Ejemplo n.º 3
0
void Calendar::editEvent()
{
    int row = m_listView->currentIndex().row();
    if(row < 0 || row >= m_sqlTableModel->rowCount())
        return;

    Event tmpEvent;
    tmpEvent.setName(m_sqlTableModel->index(row, 1).data().toString());
    tmpEvent.setDescription(m_sqlTableModel->index(row, 2).data().toString());
    tmpEvent.setDateTime(QDateTime::fromString(m_sqlTableModel->index(row, 3).data().toString(), m_dateFormat));

    EventDialog dialog(this);
    dialog.setModal(true);
    dialog.setDefault(tmpEvent.name(), tmpEvent.description(), tmpEvent.dateTime().date(), tmpEvent.dateTime().time());

    QString tempDate = tmpEvent.dateTime().toString(m_dateFormat);

    if(dialog.exec() == QDialog::Accepted)
    {
        tmpEvent = dialog.getEvent();

        if((!tmpEvent.name().isEmpty()) && (!tmpEvent.description().isEmpty()))
        {
            QSqlQuery update_query(m_db);
            update_query.prepare("UPDATE events SET "
                                 "name=?, description=?, date_time=?"
                                 "WHERE date_time=?");
            update_query.addBindValue(tmpEvent.name());
            update_query.addBindValue(tmpEvent.description());
            update_query.addBindValue(tmpEvent.dateTime().toString(m_dateFormat));
            update_query.addBindValue(tempDate);
            update_query.exec();
            qDebug() << "Edited";
            m_sqlTableModel->select();
        }
    }
}
Ejemplo n.º 4
0
void DMR_DEMIRBAS_KARTI::UPDATE_RECORD ( int record_id )
{
    SQL_QUERY update_query( DB );

    SQL_QUERY query(DB);

    int personel_id = PRS_GET_CARI_PERSONEL_ID( m_cari_hesap_id );

    query.PREPARE_SELECT("dmr_demirbaslar" , "fatura_id,yeni_brkms_amortisman_tutari" , "demirbas_id = :demirbas_id");
    query.SET_VALUE(":demirbas_id" , record_id);

    int old_fatura_id = 0;
    double old_birikmis_amortisman_tutari = 0;

    if ( query.SELECT() NE 0 ) {
        query.NEXT();

        old_fatura_id = query.VALUE(0).toInt();
        old_birikmis_amortisman_tutari = query.VALUE(1).toDouble();
    }

    if ( old_birikmis_amortisman_tutari > 0 ) {
        DMR_AMORTISMAN_TUTARINI_AZALT(record_id , 0,old_birikmis_amortisman_tutari);
    }

    if ( old_fatura_id NE m_fatura_id ) {
        if ( old_fatura_id > 0 ) {
            DMR_ENTEGRASYON_FISI_OLUSTUR(old_fatura_id , 0);
        }
    }


    update_query.PREPARE_UPDATE    ( "dmr_demirbaslar","demirbas_id","demirbas_kodu  , demirbas_adi ,"
                                     "muh_hesap_id ,alis_tarihi,alis_bedeli ,"
                                     "uretici_firma ,marka ,model ,seri_numarasi ,"
                                     "garanti_suresi ,amortisman_orani ,"
                                     "amortisman_suresi ,yeniden_degerleme_yapilacak_mi ,"
                                     "kist_amortisman ,demirbasin_degeri,"
                                     "demirbasin_yeni_degeri ,amortisman_yontemi,grup_id,"
                                     "personel_id,fatura_id ,amor_gider_hesap_id ,"
                                     "bir_amor_hesap_id , sube_id , dmr_satis_kar_hesap_id,"
                                     "yeni_brkms_amortisman_tutari,dmr_satis_zarar_hesap_id",
                                     "demirbas_id = :demirbas_id" );

    update_query.SET_VALUE ( ":demirbas_kodu"     , m_ui->lineedit_demirbas_kodu->text() );
    update_query.SET_VALUE ( ":demirbas_adi"      , m_ui->lineedit_demirbas_adi->text() );
    update_query.SET_VALUE ( ":muh_hesap_id"      , m_muh_hesap_id);
    update_query.SET_VALUE ( ":alis_tarihi"       , m_ui->adakDate_alis_tarihi->DATE());
    update_query.SET_VALUE ( ":alis_bedeli"       , m_ui->commaEdit_alis_fiyati->GET_DOUBLE());
    update_query.SET_VALUE ( ":uretici_firma"     , m_ui->lineEdit_uretici_firma->text());
    update_query.SET_VALUE ( ":marka"             , m_ui->lineEdit_marka->text());
    update_query.SET_VALUE ( ":model"             , m_ui->lineEdit_model->text());
    update_query.SET_VALUE ( ":seri_numarasi"     , m_ui->lineEdit_seri_no->text());
    update_query.SET_VALUE ( ":garanti_suresi"    , m_ui->lineedit_garanti_suresi->text().toInt());
    update_query.SET_VALUE ( ":amortisman_orani"  , m_ui->commaEdit_amortisman_orani->GET_DOUBLE());
    update_query.SET_VALUE ( ":amortisman_suresi" , m_ui->lineedit_amortisman_suresi->text().toInt());
    update_query.SET_VALUE ( ":yeniden_degerleme_yapilacak_mi" , QVariant(m_ui->checkBox_yeniden_degerleme->isChecked()).toInt());
    update_query.SET_VALUE ( ":kist_amortisman"   , QVariant(m_ui->checkBox_kist_amortisman->isChecked()).toInt());
    update_query.SET_VALUE ( ":demirbasin_degeri" , m_ui->commaEdit_alis_fiyati->GET_DOUBLE());
    update_query.SET_VALUE ( ":demirbasin_yeni_degeri" , m_ui->commaEdit_alis_fiyati->GET_DOUBLE());
    update_query.SET_VALUE ( ":amortisman_yontemi" , DMR_GET_AMORTISMAN_SEKLI_ENUM ( m_ui->comboBox_amortisman_yontemi->currentText()));
    update_query.SET_VALUE ( ":grup_id"            , m_grup_id);
    update_query.SET_VALUE ( ":personel_id"        , personel_id);
    update_query.SET_VALUE ( ":fatura_id"          , m_fatura_id);
    update_query.SET_VALUE ( ":amor_gider_hesap_id", m_amor_gider_hesap_id);
    update_query.SET_VALUE ( ":bir_amor_hesap_id"  , m_bir_amor_hesap_id);
    update_query.SET_VALUE ( ":sube_id"            , m_sube_id);
    update_query.SET_VALUE ( ":dmr_satis_kar_hesap_id" , m_dmr_satis_kar_hesap_id);
    update_query.SET_VALUE ( ":yeni_brkms_amortisman_tutari" , m_ui->commaEdit_birikmis_amortisman->GET_DOUBLE());
    update_query.SET_VALUE ( ":dmr_satis_zarar_hesap_id" , m_dmr_satis_zarar_hesap_id);;
    update_query.SET_VALUE ( ":demirbas_id"        , record_id );

    update_query.UPDATE();

    DMR_AMORTISMAN_TUTARINI_ARTTIR(record_id , 0 , m_ui->commaEdit_birikmis_amortisman->GET_DOUBLE());

    GRP_KAYDI_GRUPLARA_EKLE(E9_PROGRAMI,DEMIRBAS_GRUP_MODULU, record_id , &m_rpr_isl_grubu_idler);

    if ( m_grup_id > 0 ) {
        QList<int> grup_id_list ;
        grup_id_list << m_grup_id;

        GRP_KAYDI_GRUPLARA_EKLE(E9_PROGRAMI , DEMIRBAS_MODULU , record_id , &grup_id_list);
    }



    QString log_detaylari = QObject::tr ( "Demirbaş Kodu / Adı : " );
    log_detaylari.append ( m_ui->lineedit_demirbas_kodu->text() + "  " + m_ui->lineedit_demirbas_adi->text());

    E9_LOG_KAYDI_EKLE ( DEMIRBAS_MODULU , LOG_DMR_DEMIRBASLAR , LOG_ISLEM_UPDATE , log_detaylari );

    if ( m_fatura_id > 0 ) {
        DMR_ENTEGRASYON_FISI_OLUSTUR(m_fatura_id , record_id);
    }



}
Ejemplo n.º 5
0
void MUH_HESAP_EKLEME_FISI::ADD_LINE ( int fis_id, int row_number )
{
    SQL_QUERY sql_query ( DB );

    QString     yeni_tam_hesap_kodu;
    QLineEdit * lineEdit_hesap_kodu = ( QLineEdit * ) m_ui->tablewidget_alt_hesaplar->cellWidget( row_number, HESAP_KODU_COLUMN );
    QString     yeni_alt_hesap_kodu = lineEdit_hesap_kodu->text();
    QLineEdit * lineEdit_hesap_ismi = ( QLineEdit * ) m_ui->tablewidget_alt_hesaplar->cellWidget( row_number, HESAP_ISMI_COLUMN );
    QString     yeni_alt_hesap_ismi = lineEdit_hesap_ismi->text();

    yeni_tam_hesap_kodu.append ( MUH_GET_HESAP_KODU ( fis_id ) );
    yeni_tam_hesap_kodu.append ( m_delimeter );
    yeni_tam_hesap_kodu.append ( yeni_alt_hesap_kodu );

    int parent_id        = fis_id;
    int hesap_seviyesi   = m_ana_hesap_seviyesi + 1;
    int alt_hesap_sayisi = 0;

    sql_query.PREPARE_SELECT("muh_hesaplar" , "alt_hesap_sayisi" , "hesap_id = :hesap_id");

    sql_query.SET_VALUE      ( ":hesap_id",fis_id );
    if ( sql_query.SELECT() NE 0 ) {
        sql_query.NEXT();
        alt_hesap_sayisi = sql_query.VALUE(0).toInt();
        alt_hesap_sayisi++;
    }

    sql_query.PREPARE_UPDATE("muh_hesaplar" ,"hesap_id" , "tali_hesap , alt_hesap_sayisi",
                             "hesap_id = :hesap_id");
    sql_query.SET_VALUE      ( ":tali_hesap"      , 0       );
    sql_query.SET_VALUE      ( ":alt_hesap_sayisi", alt_hesap_sayisi );
    sql_query.SET_VALUE      ( ":hesap_id "       , fis_id );
    sql_query.UPDATE();

    sql_query.PREPARE_INSERT("muh_hesaplar" , "hesap_id" , "tali_hesap,alt_hesap_sayisi");
    sql_query.SET_VALUE(":tali_hesap"       , 1);
    sql_query.SET_VALUE(":alt_hesap_sayisi" , 0);

    int alt_hesap_id         = sql_query.INSERT();

    QTableWidgetItem * new_item = new QTableWidgetItem ( QVariant ( alt_hesap_id ).toString() );
    m_ui->tablewidget_alt_hesaplar->setItem ( row_number, ROW_ID_COLUMN, new_item );
    new_item = new QTableWidgetItem ( QVariant ( fis_id ).toString() );
    m_ui->tablewidget_alt_hesaplar->setItem ( row_number, ANA_HESAP_ID_COLUMN, new_item );

    sql_query.PREPARE_UPDATE("muh_hesaplar" , "hesap_id" , "parent_id , hesap_seviyesi, "
                             "hesap_kodu , hesap_ismi , tam_hesap_kodu , tali_hesap" ,
                             "hesap_id = :hesap_id");

    sql_query.SET_VALUE      (   ":parent_id"      , parent_id           );
    sql_query.SET_VALUE      (   ":hesap_seviyesi" , hesap_seviyesi      );
    sql_query.SET_VALUE      (   ":hesap_kodu"     , yeni_alt_hesap_kodu );
    sql_query.SET_VALUE      (   ":hesap_ismi"     , yeni_alt_hesap_ismi );
    sql_query.SET_VALUE      (   ":tam_hesap_kodu" , yeni_tam_hesap_kodu );
    sql_query.SET_VALUE      (   ":tali_hesap"     , 1                   );
    sql_query.SET_VALUE      (   ":hesap_id"       , alt_hesap_id        );
    sql_query.UPDATE();

    int yeni_hesap_id           = alt_hesap_id;
    int yeni_hesap_parent_id    = fis_id;

    if ( m_ana_hesap_aktarilmalimi EQ true ) {

        sql_query.PREPARE_SELECT("muh_hesaplar" , "parent_id,hesap_seviyesi" , "hesap_id = :hesap_id");
        sql_query.SET_VALUE      ( ":hesap_id", alt_hesap_id );

        if ( sql_query.SELECT() EQ 0 ) {
            return;
        }
        sql_query.NEXT();
        yeni_hesap_id            = alt_hesap_id;
        yeni_hesap_parent_id     = sql_query.VALUE ( "parent_id" ).toInt();
        int yeni_hesap_seviyesi  = sql_query.VALUE ( "hesap_seviyesi" ).toInt();

        sql_query.PREPARE_SELECT("muh_hesaplar" , "parent_id, hesap_seviyesi ,hesap_kodu , hesap_ismi , tam_hesap_kodu, "
                                 "toplam_borc_array,toplam_alacak_array" , "hesap_id = :hesap_id");

        sql_query.SET_VALUE (  ":hesap_id", yeni_hesap_parent_id  );

        if (sql_query.SELECT() EQ 0 ) {
            return;
        }
        sql_query.NEXT();
        int     temp_parent_id      = sql_query.VALUE(0).toInt();
        QString temp_hesap_seviyesi = sql_query.VALUE(1).toString();
        QString temp_hesap_kodu     = sql_query.VALUE(2).toString();
        QString temp_hesap_ismi     = sql_query.VALUE(3).toString();
        QString temp_tam_hesap_kodu = sql_query.VALUE(4).toString();

        double toplam_borc_array  [ E9_ARRAY_SIZE ];
        double toplam_alacak_array[ E9_ARRAY_SIZE ];

        UNPACK_DOUBLE_ARRAY ( sql_query.VALUE(5).toString(),toplam_borc_array   ,E9_ARRAY_SIZE );
        UNPACK_DOUBLE_ARRAY ( sql_query.VALUE(6).toString(),toplam_alacak_array ,E9_ARRAY_SIZE );

        SQL_QUERY update_query ( DB );

        update_query.PREPARE_UPDATE ( "muh_hesaplar","hesap_id" ,"parent_id, hesap_seviyesi ,hesap_kodu , hesap_ismi,"
                                      "tam_hesap_kodu , tali_hesap , alt_hesap_sayisi", "hesap_id = :hesap_id" );

        update_query.SET_VALUE      (  ":parent_id"       , yeni_hesap_id        );
        update_query.SET_VALUE      (  ":hesap_seviyesi"  , yeni_hesap_seviyesi  );
        update_query.SET_VALUE      (  ":hesap_kodu"      , yeni_alt_hesap_kodu  );
        update_query.SET_VALUE      (  ":hesap_ismi"      , yeni_alt_hesap_ismi  );
        update_query.SET_VALUE      (  ":tam_hesap_kodu"  , yeni_tam_hesap_kodu  );
        update_query.SET_VALUE      (  ":tali_hesap"      , 1                    );
        update_query.SET_VALUE      (  ":hesap_id"        , yeni_hesap_parent_id );
        update_query.SET_VALUE      (  ":alt_hesap_sayisi", 0                    );
        update_query.UPDATE();

        update_query.PREPARE_UPDATE ( "muh_hesaplar","hesap_id","parent_id , hesap_seviyesi ,"
                                      "hesap_kodu , hesap_ismi , tam_hesap_kodu , tali_hesap ,"
                                      "alt_hesap_sayisi, "
                                      "toplam_borc_array, toplam_alacak_array" ,
                                      "hesap_id = :hesap_id" );

        update_query.SET_VALUE (  ":parent_id"                  , temp_parent_id      );
        update_query.SET_VALUE (  ":hesap_seviyesi"             , temp_hesap_seviyesi );
        update_query.SET_VALUE (  ":hesap_kodu"                 , temp_hesap_kodu     );
        update_query.SET_VALUE (  ":hesap_ismi"                 , temp_hesap_ismi     );
        update_query.SET_VALUE (  ":tam_hesap_kodu"             , temp_tam_hesap_kodu );
        update_query.SET_VALUE (  ":tali_hesap"                 , 0                   );
        update_query.SET_VALUE (  ":hesap_id"                   , yeni_hesap_id       );
        update_query.SET_VALUE (  ":alt_hesap_sayisi"           , alt_hesap_sayisi    );
        update_query.SET_VALUE (  ":toplam_borc_array"          , PACK_DOUBLE_ARRAY ( toplam_borc_array,E9_ARRAY_SIZE )   );
        update_query.SET_VALUE (  ":toplam_alacak_array"        , PACK_DOUBLE_ARRAY ( toplam_alacak_array,E9_ARRAY_SIZE ) );
        update_query.UPDATE();


        REFRESH_FIS_RECORD ( yeni_hesap_id );
        int last_column = m_ui->tablewidget_alt_hesaplar->rowCount() -1;

        m_ui->tablewidget_alt_hesaplar->setCurrentCell ( last_column,HESAP_KODU_COLUMN );
        m_ana_hesap_id  = yeni_hesap_id;
    }


    if ( m_ui->tablewidget_alt_hesaplar->item(row_number,GRUP_IDLERI) NE NULL ) {
        QStringList grup_idleri_str = m_ui->tablewidget_alt_hesaplar->item(row_number,GRUP_IDLERI)->text().split("\t");
        QList<int>  grup_idleri;

        for ( int i = 0 ; i < grup_idleri_str.size() ; i++ ) {
            grup_idleri << grup_idleri_str.at(i).toInt();
        }

        GRP_KAYDI_GRUPLARA_EKLE(E9_PROGRAMI , MUHASEBE_MODULU , yeni_hesap_id , &grup_idleri  );
    }

    m_ana_hesap_aktarilmalimi = false;

    m_muh_hesap_plani->m_added_record << yeni_alt_hesap_kodu << yeni_alt_hesap_ismi << "0" <<
            MUH_GET_BORC_ARRAY( yeni_hesap_parent_id ) << " " << MUH_GET_ALACAK_ARRAY( yeni_hesap_parent_id) << " " << QVariant ( yeni_hesap_parent_id ).toString();

    m_muh_hesap_plani->m_updated_record << m_ana_hesap_kodu << m_ui->lineEdit_hesap_ismi->text() <<
            QVariant ( alt_hesap_sayisi ).toString() << MUH_GET_BORC_ARRAY(yeni_hesap_id ) <<
            " " << MUH_GET_ALACAK_ARRAY(yeni_hesap_id)+ " " << QVariant(yeni_hesap_parent_id).toString();

    m_muh_hesap_plani->m_line_added     = true;
    m_muh_hesap_plani->m_record_updated = true;

    QString log_detaylari = yeni_tam_hesap_kodu + "  " + yeni_alt_hesap_ismi + QObject::tr ( " Hesabı Eklendi." );

    E9_LOG_KAYDI_EKLE ( MUHASEBE_MODULU , LOG_MUH_HESAP_PLANI , LOG_ISLEM_ADD , log_detaylari );
}
Ejemplo n.º 6
0
void MUH_HESAP_EKLEME_FISI::DELETE_LINE ( int fis_id, int row_number )
{
    Q_UNUSED ( fis_id );

    SQL_QUERY sql_query  ( DB );

    int hesap_id  = m_ui->tablewidget_alt_hesaplar->item ( row_number, ROW_ID_COLUMN )->text().toInt();

    int alt_hesap_sayisi = 0;

    sql_query.PREPARE_SELECT("muh_hesaplar" , "alt_hesap_sayisi" , "hesap_id = :hesap_id");

    sql_query.SET_VALUE      ( ":hesap_id" , fis_id );

    if ( sql_query.SELECT() NE 0 ) {
        sql_query.NEXT();
        alt_hesap_sayisi = sql_query.VALUE(0).toInt();
        alt_hesap_sayisi--;
    }

    sql_query.PREPARE_UPDATE ( "muh_hesaplar", "hesap_id" , "alt_hesap_sayisi","hesap_id = :hesap_id" );
    sql_query.SET_VALUE      ( ":alt_hesap_sayisi", alt_hesap_sayisi );
    sql_query.SET_VALUE      ( ":hesap_id "       , fis_id );
    sql_query.UPDATE();



    if ( m_hesabin_parentini_aktar EQ false ) {

        sql_query.PREPARE_DELETE("muh_hesaplar" , "hesap_id = :hesap_id");

        sql_query.SET_VALUE      ( ":hesap_id", hesap_id );
        sql_query.DELETE();
        m_muh_hesap_plani->m_record_updated = true;
        return;
    }

    sql_query.PREPARE_SELECT("muh_hesaplar" , "parent_id" , "hesap_id = :hesap_id");

    sql_query.SET_VALUE      ( ":hesap_id", hesap_id );

    if ( sql_query.SELECT() > 0 ) {

        sql_query.NEXT();

        int hesap_parent_id = sql_query.VALUE(0).toInt();

        sql_query.PREPARE_SELECT("muh_hesaplar" , "parent_id, hesap_seviyesi, hesap_kodu, hesap_ismi, tam_hesap_kodu",
                                 "hesap_id = :hesap_id");
        sql_query.SET_VALUE      ( ":hesap_id", hesap_parent_id );
        if ( sql_query.SELECT() > 0 ) {
             sql_query.NEXT();
            int     parent_id       = sql_query.VALUE(0).toInt();
            int     hesap_seviyesi  = sql_query.VALUE(1).toInt();
            QString hesap_kodu      = sql_query.VALUE(2).toString();
            QString hesap_ismi      = sql_query.VALUE(3).toString();
            QString tam_hesap_kodu  = sql_query.VALUE(4).toString();


            SQL_QUERY update_query ( DB );
            update_query.PREPARE_UPDATE ( "muh_hesaplar","hesap_id" ,"parent_id, "
                                          "hesap_seviyesi, hesap_kodu, "
                                          "hesap_ismi , tam_hesap_kodu , "
                                          "tali_hesap","hesap_id = :hesap_id" );

            update_query.SET_VALUE ( ":parent_id"      , parent_id                                              );
            update_query.SET_VALUE ( ":hesap_seviyesi" , hesap_seviyesi                                         );
            update_query.SET_VALUE ( ":hesap_kodu"     , hesap_kodu                                             );
            update_query.SET_VALUE ( ":hesap_ismi"     , hesap_ismi                                             );
            update_query.SET_VALUE ( ":tam_hesap_kodu" , tam_hesap_kodu                                         );
            update_query.SET_VALUE ( ":tali_hesap"     , 1);
            update_query.SET_VALUE ( ":hesap_id"       , hesap_id                                               );

            update_query.UPDATE();

            sql_query.PREPARE_DELETE (  "muh_hesaplar","hesap_id = :hesap_id "  );
            sql_query.SET_VALUE      (  ":hesap_id", hesap_parent_id  );
            sql_query.DELETE();

            QString log_detaylari = tam_hesap_kodu + "  " + hesap_ismi + QObject::tr ( " Hesabı Silindi." );
            E9_LOG_KAYDI_EKLE ( MUHASEBE_MODULU , LOG_MUH_HESAP_PLANI , LOG_ISLEM_DELETE , log_detaylari );
        }
    }

    m_muh_hesap_plani->m_record_updated = true;
}
Ejemplo n.º 7
0
void GRUP_KERNEL::DELETE_ITEM (QStringList item)
{
    int item_id = -1;

    if ( item.size() NE 0  ) {
        item_id = item.at( m_grp_id_column ).toInt();
    }

    if ( item_id EQ -1 ) {
        return;
    }

    m_db->START_TRANSACTION();

    SQL_QUERY sql_query  ( m_db );

    sql_query.PREPARE_SELECT ( GRUP_KERNEL::GET_GRUPLAR_TABLE_NAME(),GRUP_KERNEL::GET_GRUPLAR_PARENT_ID_COLUMN_NAME(),QString( GRUP_KERNEL::GET_GRUPLAR_ID_COLUMN_NAME()+"=:grup_id" ),"");
    sql_query.SET_VALUE       ( ":grup_id", item_id );

    if ( sql_query.SELECT() NE 0 ) {
        sql_query.NEXT();
        if ( sql_query.VALUE(0).toInt() > 0 )  {
            int alt_grup_sayisi = 0;
            int parent_id = sql_query.VALUE(0).toInt();

            sql_query.PREPARE_SELECT ( GRUP_KERNEL::GET_GRUPLAR_TABLE_NAME(),GRUP_KERNEL::GET_GRUPLAR_ALT_GRUP_SAYISI_COLUMN_NAME(),QString (  GRUP_KERNEL::GET_GRUPLAR_ID_COLUMN_NAME()+"=:grup_id" ),"");
            sql_query.SET_VALUE      ( ":grup_id",parent_id );
            if ( sql_query.SELECT() NE 0 ) {
                sql_query.NEXT();
                alt_grup_sayisi = sql_query.VALUE(0).toInt();
                alt_grup_sayisi--;
            }

            sql_query.PREPARE_UPDATE ( GRUP_KERNEL::GET_GRUPLAR_TABLE_NAME(),GRUP_KERNEL::GET_GRUPLAR_ID_COLUMN_NAME(),GRUP_KERNEL::GET_GRUPLAR_ALT_GRUP_SAYISI_COLUMN_NAME(),QString ( GRUP_KERNEL::GET_GRUPLAR_ID_COLUMN_NAME()+"=:grup_id" ));
            sql_query.SET_VALUE      ( ":"+GRUP_KERNEL::GET_GRUPLAR_ALT_GRUP_SAYISI_COLUMN_NAME(), alt_grup_sayisi );
            sql_query.SET_VALUE      ( ":grup_id"         , parent_id );
            sql_query.UPDATE();
        }
    }

    sql_query.PREPARE_SELECT ( GRUP_KERNEL::GET_GRUPLAR_TABLE_NAME(),QString(GRUP_KERNEL::GET_GRUPLAR_PARENT_ID_COLUMN_NAME()+","+GRUP_KERNEL::GET_GRUPLAR_UYE_SAYISI_COLUMN_NAME()),
                               QString ( GRUP_KERNEL::GET_GRUPLAR_ID_COLUMN_NAME()+"=:grup_id"),"");
    sql_query.SET_VALUE      ( ":grup_id",item_id );

    if ( sql_query.SELECT() EQ 0 ) {
        m_db->CANCEL_TRANSACTION();
        MSG_ERROR(tr ("An error occurred while retrieving top group information for the group."),NULL);//Gruba ait üst grup bilgileri alınırken hata oluştu.
        return;
    }

    sql_query.NEXT();

    int selected_grup_parent_id  = sql_query.VALUE(0).toInt();
    int grup_uye_sayisi          = sql_query.VALUE(1).toInt();

    if ( m_grubu_parentine_aktar EQ false ) {
        m_grubu_parentine_aktar = false;
        sql_query.PREPARE_DELETE ( GRUP_KERNEL::GET_GRUPLAR_TABLE_NAME(),QString (GRUP_KERNEL::GET_GRUPLAR_ID_COLUMN_NAME()+ "=:grup_id "));
        sql_query.SET_VALUE      ( ":grup_id", item_id );
        sql_query.DELETE();

        if ( selected_grup_parent_id > 0 ) {
            sql_query.PREPARE_SELECT ( GRUP_KERNEL::GET_GRUPLAR_TABLE_NAME(),GRUP_KERNEL::GET_GRUPLAR_ID_COLUMN_NAME(),QString ( GET_GRUPLAR_PARENT_ID_COLUMN_NAME()+"=:grup_parent_id"),"");
            sql_query.SET_VALUE      ( ":grup_parent_id", selected_grup_parent_id);

            if ( sql_query.SELECT() EQ 0 ) {
                sql_query.PREPARE_UPDATE ( GRUP_KERNEL::GET_GRUPLAR_TABLE_NAME(),GRUP_KERNEL::GET_GRUPLAR_ID_COLUMN_NAME(),GRUP_KERNEL::GET_GRUPLAR_SON_SEVIYEMI_COLUMN_NAME(),QString ( GRUP_KERNEL::GET_GRUPLAR_ID_COLUMN_NAME()+"= :grup_id"));
                sql_query.SET_VALUE      ( ":"+GRUP_KERNEL::GET_GRUPLAR_SON_SEVIYEMI_COLUMN_NAME(), 1);
                sql_query.SET_VALUE      ( ":grup_id", selected_grup_parent_id);
                sql_query.UPDATE();
            }
        }
    }
    else {
        QString columns = QString("%1,%2,%3,%4,%5,%6").arg ( GRUP_KERNEL::GET_GRUPLAR_PARENT_ID_COLUMN_NAME() )
                          .arg ( GRUP_KERNEL::GET_GRUPLAR_GRUP_SEVIYESI_COLUMN_NAME() )
                          .arg ( GRUP_KERNEL::GET_GRUPLAR_GRUP_KODU_COLUMN_NAME() )
                          .arg ( GRUP_KERNEL::GET_GRUPLAR_GRUP_ADI_COLUMN_NAME() )
                          .arg ( GRUP_KERNEL::GET_GRUPLAR_TAM_GRUP_KODU_COLUMN_NAME() )
                          .arg ( GRUP_KERNEL::GET_GRUPLAR_UYE_SAYISI_COLUMN_NAME() );

        sql_query.PREPARE_SELECT ( GRUP_KERNEL::GET_GRUPLAR_TABLE_NAME(),columns,QString ( GRUP_KERNEL::GET_GRUPLAR_ID_COLUMN_NAME()+"= :grup_id" ),"");
        sql_query.SET_VALUE      ( ":grup_id", selected_grup_parent_id );

        if ( sql_query.SELECT() > 0 ) {
            sql_query.NEXT();
            int     grup_parent_id  = sql_query.VALUE(0).toInt();
            int     grup_seviyesi   = sql_query.VALUE(1).toInt();
            QString grup_kodu       = sql_query.VALUE(2).toString();
            QString grup_adi        = sql_query.VALUE(3).toString();
            QString tam_grup_kodu   = sql_query.VALUE(4).toString();

            SQL_QUERY update_query ( m_db );

            columns = QString("%1,%2,%3,%4,%5,%6,%7").arg ( GRUP_KERNEL::GET_GRUPLAR_PARENT_ID_COLUMN_NAME())
                      .arg ( GRUP_KERNEL::GET_GRUPLAR_GRUP_SEVIYESI_COLUMN_NAME())
                      .arg ( GRUP_KERNEL::GET_GRUPLAR_GRUP_KODU_COLUMN_NAME())
                      .arg ( GRUP_KERNEL::GET_GRUPLAR_GRUP_ADI_COLUMN_NAME())
                      .arg ( GRUP_KERNEL::GET_GRUPLAR_TAM_GRUP_KODU_COLUMN_NAME())
                      .arg ( GRUP_KERNEL::GET_GRUPLAR_UYE_SAYISI_COLUMN_NAME())
                      .arg ( GRUP_KERNEL::GET_GRUPLAR_SON_SEVIYEMI_COLUMN_NAME());

            update_query.PREPARE_UPDATE ( GRUP_KERNEL::GET_GRUPLAR_TABLE_NAME(),GRUP_KERNEL::GET_GRUPLAR_ID_COLUMN_NAME(),columns,QString ( GRUP_KERNEL::GET_GRUPLAR_ID_COLUMN_NAME()+"= :grup_id"));

            update_query.SET_VALUE    ( ":"+GRUP_KERNEL::GET_GRUPLAR_PARENT_ID_COLUMN_NAME()          , grup_parent_id                );
            update_query.SET_VALUE    ( ":"+GRUP_KERNEL::GET_GRUPLAR_GRUP_SEVIYESI_COLUMN_NAME()      , grup_seviyesi                 );
            update_query.SET_VALUE    ( ":"+GRUP_KERNEL::GET_GRUPLAR_GRUP_KODU_COLUMN_NAME()          , grup_kodu                     );
            update_query.SET_VALUE    ( ":"+GRUP_KERNEL::GET_GRUPLAR_GRUP_ADI_COLUMN_NAME()           , grup_adi                      );
            update_query.SET_VALUE    ( ":"+GRUP_KERNEL::GET_GRUPLAR_TAM_GRUP_KODU_COLUMN_NAME()      , tam_grup_kodu                 );
            update_query.SET_VALUE    ( ":"+GRUP_KERNEL::GET_GRUPLAR_UYE_SAYISI_COLUMN_NAME()         , grup_uye_sayisi               );
            update_query.SET_VALUE    ( ":"+GRUP_KERNEL::GET_GRUPLAR_SON_SEVIYEMI_COLUMN_NAME()       , 1                             );
            update_query.SET_VALUE    ( ":grup_id"                                                    , item_id                       );

            update_query.UPDATE();

            sql_query.PREPARE_DELETE ( GRUP_KERNEL::GET_GRUPLAR_TABLE_NAME(),QString ( GRUP_KERNEL::GET_GRUPLAR_ID_COLUMN_NAME()+"=:grup_id "));
            sql_query.SET_VALUE      ( ":grup_id", selected_grup_parent_id );
            sql_query.DELETE();
        }
    }

    m_db->COMMIT_TRANSACTION();

    ADD_VALUE_TO_DELETED_ITEM_PARENT(m_grp_alt_grup_sayisi_column,-1);
}
void FAT_FATURA_DETAYLARI_BATCH::RUN_BATCH ()
{
    int  new_tevkifatli_fatura_mi = QVariant ( m_ui->checkBox_tevkifatli_fatura_mi->isChecked() ).toInt();

    M_FATURA_DETAYLARI->yurtici_satislar_hesap_id     = m_sube_yurtici_satis_hsp_id;
    M_FATURA_DETAYLARI->hizmet_urt_maliyeti_hesap_id  = m_sube_hizmet_urt_maliyet_hsp_id;
    M_FATURA_DETAYLARI->tevkifatli_fatura_mi          = new_tevkifatli_fatura_mi;
    M_FATURA_DETAYLARI->tevkifat_yuzdesi              = m_ui->commaEdit_tevkifat_yuzdesi->GET_DOUBLE();
    M_FATURA_DETAYLARI->kdv_muaf_mi                   = QVariant ( m_ui->checkBox_kdv_muaf_mi->isChecked()).toInt();
    M_FATURA_DETAYLARI->otv_muaf_mi                   = QVariant ( m_ui->checkBox_otv_muaf_mi->isChecked()).toInt();
    M_FATURA_DETAYLARI->satistan_iade_hesap_id        = m_satistan_iade_hesap_id;

    bool tevkifatli_fatura_secenegi_degisti = false;
    bool hic_degisiklik_yapilmadi           = true;
    bool tevkifat_yuzdesi_degisti           = false;


    SQL_QUERY query ( DB );

    query.PREPARE_SELECT("fat_faturalar" , "isk_sonrasi_kdv_tutari, fatura_tutari, "
                         "tevkifatli_fatura_mi, tevkifat_yuzdesi, tevkifatli_kdv_tutari, "
                         "yurtici_satislar_hesap_id, hizmet_urt_maliyeti_hesap_id, "
                         "kdv_muaf_mi,otv_muaf_mi ,fatura_tarihi, "
                         "iskonto_yuzdesi, satistan_iade_hesap_id " , "fis_id = :fis_id");

    query.SET_VALUE ( ":fis_id", m_fis_id );

    if ( query.SELECT() EQ 0 ) {
        MSG_WARNING(  tr ( "Fatura bilgileri okunamadı"), NULL );
        return;
    }

    query.NEXT();

    double  kdv_tutari                              = query.VALUE ( "isk_sonrasi_kdv_tutari" ).toDouble();
    double  fatura_tutari                           = query.VALUE ( "fatura_tutari" ).toDouble();

    int     old_tevkifatli_fatura_mi                = query.VALUE ( "tevkifatli_fatura_mi" ).toInt();
    double  old_tevkifat_yuzdesi                    = query.VALUE ( "tevkifat_yuzdesi" ).toDouble();
    double  old_tevkifatli_kdv_tutari               = query.VALUE ( "tevkifatli_kdv_tutari" ).toDouble();

    int     old_yurtici_satislar_hesap_id           = query.VALUE ( "yurtici_satislar_hesap_id" ).toInt();
    int     old_hizmet_urt_maliyeti_hesap_id        = query.VALUE ( "hizmet_urt_maliyeti_hesap_id" ).toInt();
    int     old_satistan_iade_hesap_id              = query.VALUE ( "satistan_iade_hesap_id" ).toInt();
    int     old_kdv_muaf_mi                         = query.VALUE ( "kdv_muaf_mi" ).toInt();
    int     old_otv_muaf_mi                         = query.VALUE ( "otv_muaf_mi").toInt();

    QDate   fatura_tarihi                           = QDate::fromString(query.VALUE("fatura_tarihi").toString() , "yyyy.MM.dd");

    double  iskonto_yuzdesi                         = query.VALUE("iskonto_yuzdesi").toDouble();

    if ( old_tevkifatli_fatura_mi NE new_tevkifatli_fatura_mi ) {
        tevkifatli_fatura_secenegi_degisti  = true;
        hic_degisiklik_yapilmadi            = false;
    }

    if ( old_yurtici_satislar_hesap_id NE m_sube_yurtici_satis_hsp_id ) {
        hic_degisiklik_yapilmadi = false;
    }

    if ( old_hizmet_urt_maliyeti_hesap_id NE m_sube_hizmet_urt_maliyet_hsp_id ) {
        hic_degisiklik_yapilmadi = false;
    }

    if ( old_satistan_iade_hesap_id NE m_satistan_iade_hesap_id ) {
        hic_degisiklik_yapilmadi = false;
    }

    if ( old_tevkifat_yuzdesi NE m_ui->commaEdit_tevkifat_yuzdesi->GET_DOUBLE() ) {
        hic_degisiklik_yapilmadi = false;
        tevkifat_yuzdesi_degisti = true;
    }

    bool kdv_otv_muaf_mi_secenegi_degisti = false;

    if ( old_kdv_muaf_mi NE QVariant(m_ui->checkBox_kdv_muaf_mi->isChecked()).toInt() OR
         old_otv_muaf_mi NE QVariant(m_ui->checkBox_otv_muaf_mi->isChecked()).toInt() )  {
        hic_degisiklik_yapilmadi = false;
        kdv_otv_muaf_mi_secenegi_degisti = true;
    }

    if ( hic_degisiklik_yapilmadi EQ true ) {
        *m_return_value = false;
        close ();
    }

    DB->START_TRANSACTION();


    if ( kdv_otv_muaf_mi_secenegi_degisti EQ true ) {
        //vergiden muaf ise kdv ve otv oranlari tum satirlarda sifirlanir.
        SQL_QUERY update_query(DB);

        double brut_tutar                 = 0.0;
        double isk_oncesi_otv_dahil_tutar = 0.0;
        double isk_oncesi_kdv_dahil_tutar = 0.0;


        query.PREPARE_SELECT("fat_fatura_satirlari", "satirdaki_urun_miktari,kdv_dahil_mi,doviz_id,fis_satiri_id,"
                             "isk_sonrasi_urun_birim_fiyati,kdv_orani,otv_orani,"
                             "satir_kdv_tutari,satir_otv_tutari", "fis_id = :fis_id");

        query.SET_VALUE(":fis_id" , m_fis_id );

        if ( query.SELECT() NE 0 ) {

            while ( query.NEXT() ) {

                double satirdaki_urun_miktari        = query.VALUE(0).toDouble();
                int    kdv_dahil_mi                  = query.VALUE(1).toInt();
                int    doviz_id                      = query.VALUE(2).toInt();
                int    fis_satiri_id                 = query.VALUE(3).toInt();
                double isk_sonrasi_urun_birim_fiyati = query.VALUE(4).toDouble();
                double kdv_orani                     = query.VALUE("kdv_orani").toDouble();
                double otv_orani                     = query.VALUE("otv_orani").toDouble();
                double satir_kdv_tutari              = query.VALUE("satir_kdv_tutari").toDouble();
                double satir_otv_tutari              = query.VALUE("satir_otv_tutari").toDouble();

                double satir_tutari                  = satirdaki_urun_miktari * isk_sonrasi_urun_birim_fiyati;

                if ( m_ui->checkBox_kdv_muaf_mi->isChecked() EQ true ) {
                    kdv_orani        = 0;
                    satir_kdv_tutari = 0;
                    kdv_tutari       = 0;
                }
                if ( m_ui->checkBox_otv_muaf_mi->isChecked() EQ true ) {
                    otv_orani        = 0;
                    satir_otv_tutari = 0;
                }

                double otv_dahil_tutar   = 0.0;
                double vergi_haric_tutar = 0.0;

                if ( kdv_dahil_mi EQ 1 ) {
                    otv_dahil_tutar   = ROUND ( satir_tutari / ( 1 + ( kdv_orani / 100 ) )    );
                    vergi_haric_tutar = ROUND ( otv_dahil_tutar / ( 1 + ( otv_orani / 100 ) ) );
                }
                else {
                    vergi_haric_tutar = satir_tutari;
                    otv_dahil_tutar = ROUND ( vergi_haric_tutar * ( 1 + ( otv_orani / 100 ) ) );
                }



                double temel_para_birimi_vergi_haric_tutar = DVZ_PARA_BIRIMLERINI_DONUSTUR ( doviz_id,
                                                                                         vergi_haric_tutar,
                                                                                         DVZ_GET_TEMEL_PARA_BIRIMI_ID(),
                                                                                         fatura_tarihi);

                double temel_para_birimi_otv_dahil_tutar = ROUND ( temel_para_birimi_vergi_haric_tutar * ( 1 + ( otv_orani / 100 ) ) );

                double temel_para_birimi_kdv_tutari      = ROUND ( temel_para_birimi_otv_dahil_tutar * ( kdv_orani / 100 ) );

                double temel_para_birimi_kdv_dahil_tutar = ROUND ( temel_para_birimi_otv_dahil_tutar + temel_para_birimi_kdv_tutari );

                update_query.PREPARE_UPDATE("fat_fatura_satirlari","fis_satiri_id", "kdv_orani,"
                                     "otv_orani,satir_kdv_tutari , satir_kdv_dahil_tutar ,"
                                     "satir_vergi_haric_tutar , satir_otv_tutari  , satir_otv_dahil_tutar,"
                                     "satir_tutari ",
                                     "fis_satiri_id = :fis_satiri_id");

                update_query.SET_VALUE(":kdv_orani"               , kdv_orani);
                update_query.SET_VALUE(":otv_orani"               , otv_orani);
                update_query.SET_VALUE(":satir_kdv_tutari"        , satir_kdv_tutari);
                update_query.SET_VALUE(":satir_kdv_dahil_tutar"   , ROUND ( temel_para_birimi_kdv_dahil_tutar));
                update_query.SET_VALUE(":satir_vergi_haric_tutar" , ROUND ( temel_para_birimi_vergi_haric_tutar ));
                update_query.SET_VALUE(":satir_otv_tutari"        , satir_otv_tutari);
                update_query.SET_VALUE(":satir_otv_dahil_tutar"   , ROUND ( temel_para_birimi_otv_dahil_tutar ));
                update_query.SET_VALUE(":satir_tutari"            , ROUND ( satir_tutari));
                update_query.SET_VALUE(":fis_satiri_id"           , fis_satiri_id);

                update_query.UPDATE();

                brut_tutar                 += temel_para_birimi_vergi_haric_tutar;
                isk_oncesi_otv_dahil_tutar += temel_para_birimi_otv_dahil_tutar;
                isk_oncesi_kdv_dahil_tutar += temel_para_birimi_kdv_dahil_tutar;
            }

            //Satirlara gore fatura toplamlari ayarlanacak

            double  isk_sonrasi_otv_dahil_tutar     = ROUND ( isk_oncesi_otv_dahil_tutar    * ( 1 - ( iskonto_yuzdesi / 100 ) ) );
            double  ara_toplam                      = ROUND ( brut_tutar * ( 1 - ( iskonto_yuzdesi / 100 ) ) );

            fatura_tutari = ROUND ( isk_oncesi_kdv_dahil_tutar    * ( 1 - ( iskonto_yuzdesi / 100 ) ) );


            double KDV_TUTARLAR_ARRAY[KDV_OTV_ORANLARI_SAYISI];
            double OTV_TUTARLAR_ARRAY[KDV_OTV_ORANLARI_SAYISI];

            for ( int i = 0 ; i < KDV_OTV_ORANLARI_SAYISI ; i++ ) {
                KDV_TUTARLAR_ARRAY[i] = 0;
            }

            for ( int i = 0 ; i < KDV_OTV_ORANLARI_SAYISI ; i++ ) {
                OTV_TUTARLAR_ARRAY[i] = 0;
            }

            query.PREPARE_SELECT("fat_faturalar" ,"isk_oncesi_kdv_tutari,isk_oncesi_otv_tutari,"
                                 "isk_sonrasi_otv_tutari,isk_sonrasi_kdv_tutari" ,"fis_id = :fis_id");
            query.SET_VALUE(":fis_id" , m_fis_id);

            double isk_oncesi_kdv_tutari  = 0.0;
            double isk_oncesi_otv_tutari  = 0.0;
            double isk_sonrasi_otv_tutari = 0.0;
            double isk_sonrasi_kdv_tutari = 0.0;

            if ( query.SELECT() NE 0 ) {
                query.NEXT();

                isk_oncesi_kdv_tutari = query.VALUE(0).toDouble();
                isk_oncesi_otv_tutari = query.VALUE(1).toDouble();
                isk_sonrasi_otv_tutari= query.VALUE(2).toDouble();
                isk_sonrasi_kdv_tutari= query.VALUE(3).toDouble();
            }

            if ( m_ui->checkBox_kdv_muaf_mi->isChecked() EQ true ) {
                isk_oncesi_kdv_tutari = 0;
                isk_sonrasi_kdv_tutari= 0;
            }
            if ( m_ui->checkBox_otv_muaf_mi->isChecked() EQ true ) {
                isk_oncesi_otv_tutari = 0;
                isk_sonrasi_otv_tutari= 0;
            }

            query.PREPARE_UPDATE("fat_faturalar","fis_id", "isk_oncesi_kdv_tutari,"
                                 "isk_oncesi_otv_tutari ,brut_tutar ,"
                                 "isk_oncesi_kdv_dahil_tutar ,"
                                 "isk_oncesi_otv_dahil_tutar , "
                                 "isk_sonrasi_otv_tutari, isk_sonrasi_kdv_tutari,"
                                 "isk_sonrasi_otv_dahil_tutar , "
                                 "fatura_tutari , ara_toplam ,"
                                 "kdv_oran_bilgileri  , "
                                 "otv_oran_bilgileri  , "
                                 "kdv_oran_gore_tutarlar_array ,"
                                 "otv_oran_gore_tutarlar_array ",
                                 "fis_id = :fis_id");

            query.SET_VALUE(":isk_oncesi_kdv_tutari"        , isk_oncesi_kdv_tutari);
            query.SET_VALUE(":isk_oncesi_otv_tutari"        , isk_oncesi_otv_tutari);
            query.SET_VALUE(":brut_tutar"                   , ROUND ( brut_tutar ));
            query.SET_VALUE(":isk_oncesi_kdv_dahil_tutar"   , ROUND ( isk_oncesi_kdv_dahil_tutar));
            query.SET_VALUE(":isk_oncesi_otv_dahil_tutar"   , ROUND ( isk_oncesi_otv_dahil_tutar ));
            query.SET_VALUE(":isk_sonrasi_otv_tutari"       , isk_sonrasi_otv_tutari);
            query.SET_VALUE(":isk_sonrasi_kdv_tutari"       , isk_sonrasi_kdv_tutari);
            query.SET_VALUE(":isk_sonrasi_otv_dahil_tutar"  , ROUND ( isk_sonrasi_otv_dahil_tutar));
            query.SET_VALUE(":fatura_tutari"                , ROUND ( fatura_tutari ));
            query.SET_VALUE(":ara_toplam"                   , ROUND ( ara_toplam));
            query.SET_VALUE(":kdv_oran_bilgileri"           , "");
            query.SET_VALUE(":otv_oran_bilgileri"           , "");
            query.SET_VALUE(":kdv_oran_gore_tutarlar_array" , PACK_DOUBLE_ARRAY(KDV_TUTARLAR_ARRAY , KDV_OTV_ORANLARI_SAYISI));
            query.SET_VALUE(":otv_oran_gore_tutarlar_array" , PACK_DOUBLE_ARRAY(OTV_TUTARLAR_ARRAY , KDV_OTV_ORANLARI_SAYISI));
            query.SET_VALUE(":fis_id"                       , m_fis_id);

            query.UPDATE();

        }

    }
    double  tevkifatli_kdv_tutari                   = 0.00;

    if ( tevkifatli_fatura_secenegi_degisti EQ true ) {
        if ( old_tevkifatli_fatura_mi EQ 1 ) {
            kdv_tutari              = ROUND ( kdv_tutari       + old_tevkifatli_kdv_tutari );
            fatura_tutari           = ROUND ( fatura_tutari    + old_tevkifatli_kdv_tutari );
            tevkifatli_kdv_tutari   = 0.00;
        }
        else {
            tevkifatli_kdv_tutari = ROUND ( ( kdv_tutari * m_ui->commaEdit_tevkifat_yuzdesi->GET_DOUBLE() ) / 100 );
            kdv_tutari            = ROUND ( kdv_tutari     - tevkifatli_kdv_tutari );
            fatura_tutari         = ROUND ( fatura_tutari  - tevkifatli_kdv_tutari );
        }
    }
    else if ( tevkifat_yuzdesi_degisti EQ true ) {

        kdv_tutari            = ROUND ( kdv_tutari       + old_tevkifatli_kdv_tutari );
        fatura_tutari         = ROUND ( fatura_tutari    - kdv_tutari + old_tevkifatli_kdv_tutari );
        tevkifatli_kdv_tutari = ROUND ( ( kdv_tutari     * m_ui->commaEdit_tevkifat_yuzdesi->GET_DOUBLE() ) / 100 );
        kdv_tutari            = ROUND ( kdv_tutari       - tevkifatli_kdv_tutari );
        fatura_tutari         = ROUND ( fatura_tutari    + kdv_tutari );
    }


    query.PREPARE_UPDATE ( "fat_faturalar ","fis_id",
                           "yurtici_satislar_hesap_id , "
                           "hizmet_urt_maliyeti_hesap_id  , "
                           "tevkifatli_fatura_mi          , "
                           "tevkifat_yuzdesi              , "
                           "tevkifatli_kdv_tutari         , "
                           "isk_sonrasi_kdv_tutari        , "
                           "fatura_tutari                 , "
                           "satistan_iade_hesap_id        , "
                           "kdv_muaf_mi                   , "
                           "otv_muaf_mi                     ",
                           "fis_id = :fis_id" );

    query.SET_VALUE ( ":yurtici_satislar_hesap_id",         m_sube_yurtici_satis_hsp_id                           );
    query.SET_VALUE ( ":hizmet_urt_maliyeti_hesap_id",      m_sube_hizmet_urt_maliyet_hsp_id                   );
    query.SET_VALUE ( ":tevkifatli_fatura_mi",              new_tevkifatli_fatura_mi                         );
    query.SET_VALUE ( ":tevkifat_yuzdesi",                  m_ui->commaEdit_tevkifat_yuzdesi->GET_DOUBLE()   );
    query.SET_VALUE ( ":tevkifatli_kdv_tutari",             tevkifatli_kdv_tutari                            );
    query.SET_VALUE ( ":isk_sonrasi_kdv_tutari",            kdv_tutari                                       );
    query.SET_VALUE ( ":fatura_tutari",                     fatura_tutari                                    );
    query.SET_VALUE ( ":satistan_iade_hesap_id",            m_satistan_iade_hesap_id                         );
    query.SET_VALUE ( ":kdv_muaf_mi",                       QVariant(m_ui->checkBox_kdv_muaf_mi->isChecked()).toInt());
    query.SET_VALUE ( ":otv_muaf_mi",                       QVariant(m_ui->checkBox_otv_muaf_mi->isChecked()).toInt());
    query.SET_VALUE ( ":fis_id",                            m_fis_id                                         );

    query.UPDATE();

    DB->COMMIT_TRANSACTION();

    *m_return_value = true;
    close();
}