Example #1
0
bool XYZ_AYARLAR_STRUCTINI_DOLDUR ()
{
    SQL_QUERY query ( DB );

    query.PREPARE_SELECT("xyz_ayarlar",
                         "mali_yil_baslangic_tarihi"
                         ",mali_yil_bitis_tarihi",
                         "ayarlar_id = :ayarlar_id");

    query.SET_VALUE( ":ayarlar_id", 1 );

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

        XYZ_AYARLAR.mali_yil_baslangic_tarihi = QDate::fromString ( query.VALUE(0).toString(), "yyyy.MM.dd" );
        XYZ_AYARLAR.mali_yil_bitis_tarihi    = QDate::fromString ( query.VALUE(1).toString(), "yyyy.MM.dd" );

        return true;
    }

    DB->START_TRANSACTION();
    query.PREPARE_INSERT ("xyz_ayarlar",
                          "ayarlar_id",
                          "mali_yil_baslangic_tarihi"
                          ",mali_yil_bitis_tarihi");
    query.SET_VALUE( ":mali_yil_baslangic_tarihi", QString::number(QDate::currentDate().year())+ ".01.01");
    query.SET_VALUE( ":mali_yil_bitis_tarihi"    , QString::number(QDate::currentDate().year())+ ".12.31");
    int id = query.INSERT();
    DB->COMMIT_TRANSACTION();
    if (id > 1) {
        return false; // Id 1 silindiyse sonsuz döngüde kalıyor.
    }
    return XYZ_AYARLAR_STRUCTINI_DOLDUR();
}
Example #2
0
int GRP_GRUP_EKLE ( ADAK_GRUP_STRUCT * grup )
{
    int     grup_seviyesi       = 0;
    int     alt_grup_sayisi     = 0;
    QString tam_grup_kodu       = grup->grup_kodu;

    SQL_QUERY query ( DB );

    if (grup->grup_parent_id > 0) {
        query.PREPARE_SELECT("adak_gruplar","grup_seviyesi, tam_grup_kodu,alt_grup_sayisi","grup_id = :grup_id","");
        query.SET_VALUE(":grup_id" , grup->grup_parent_id);

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

            grup_seviyesi          = query.VALUE("grup_seviyesi").toInt() + 1;
            tam_grup_kodu.prepend(QString (" " + query.VALUE("tam_grup_kodu").toString()));
            alt_grup_sayisi        = query.VALUE("alt_grup_sayisi").toInt();
        }

        query.PREPARE_UPDATE("adak_gruplar","grup_id","grup_son_seviye_mi, alt_grup_sayisi = alt_grup_sayisi + 1","grup_id = :grup_id");
        query.SET_VALUE(":grup_son_seviye_mi",0);
        query.SET_VALUE(":alt_grup_sayisi"   ,(alt_grup_sayisi+1));
        query.SET_VALUE(":grup_id"           ,grup->grup_parent_id);
        query.UPDATE();
    }

    query.PREPARE_INSERT("adak_gruplar","grup_id","grup_parent_id,grup_seviyesi, "
                         "grup_son_seviye_mi, gruptaki_kayit_sayisi,alt_grup_sayisi,modul_id, "
                         "program_id, grup_kodu,grup_adi,tam_grup_kodu");

    query.SET_VALUE(":grup_parent_id"       , grup->grup_parent_id);
    query.SET_VALUE(":grup_seviyesi"        , grup_seviyesi);
    query.SET_VALUE(":grup_son_seviye_mi"   , 1);
    query.SET_VALUE(":gruptaki_kayit_sayisi", 0);
    query.SET_VALUE(":alt_grup_sayisi"      , 0);
    query.SET_VALUE(":modul_id"             , grup->modul_id);
    query.SET_VALUE(":program_id"           , grup->program_id);
    query.SET_VALUE(":grup_kodu"            , grup->grup_kodu);
    query.SET_VALUE(":grup_adi"             , grup->grup_adi);
    query.SET_VALUE(":tam_grup_kodu"        , tam_grup_kodu);

    return query.INSERT();
}
Example #3
0
void GRP_KAYDI_GRUPLARA_EKLE ( int program_id , int module_id ,int record_id , QList<int> * grup_idleri )
{
    QString gruplar_str = "";

    SQL_QUERY query    ( DB );

    if (grup_idleri->size() NE 0) {
        for ( int i = 0 ; i < grup_idleri->size() ; i++ ) {
            gruplar_str.append("\t");
            gruplar_str.append(QVariant(grup_idleri->at(i)).toString());
            gruplar_str.append("\t");
        }
    }

    query.PREPARE_SELECT ( "adak_kaydin_gruplari","id,gruplar","record_id = :record_id AND module_id = :module_id AND program_id = :program_id" ,"");

    query.SET_VALUE ( ":record_id" , record_id  );
    query.SET_VALUE ( ":module_id" , module_id  );
    query.SET_VALUE ( ":program_id", program_id );

    if ( query.SELECT() NE 0 ) {
        query.NEXT();
        int id              = query.VALUE(0).toInt();
        QStringList gruplar = query.VALUE(1).toString().split("\t",QString::SkipEmptyParts);

        query.PREPARE_UPDATE("adak_kaydin_gruplari","id","gruplar","id = :id");
        query.SET_VALUE(":gruplar" ,QVariant(gruplar_str).toByteArray());
        query.SET_VALUE(":id",id);
        query.UPDATE();

        for ( int i = 0 ; i < grup_idleri->size() ; i++ ) {
            if (gruplar.contains(QVariant(grup_idleri->at(i)).toString()) EQ true) {
                gruplar.removeAt(i);
                continue;
            }
            query.PREPARE_SELECT("adak_gruplar","gruptaki_kayit_sayisi","grup_id=:grup_id","");
            query.SET_VALUE(":grup_id",grup_idleri->at(i));
            if ( query.SELECT() EQ 0 ) {
                return;
            }
            query.NEXT();

            int value = query.VALUE(0).toInt();

            query.PREPARE_UPDATE("adak_gruplar","grup_id","gruptaki_kayit_sayisi","grup_id=:grup_id");
            query.SET_VALUE(":gruptaki_kayit_sayisi",(value+1));
            query.SET_VALUE(":grup_id",grup_idleri->at(i));
            query.UPDATE();
        }

        for ( int i = 0 ; i < gruplar.size() ; i++ ) {
            if (gruplar.at(i).toInt() NE 0 ) {
                query.PREPARE_SELECT("adak_gruplar","gruptaki_kayit_sayisi","grup_id=:grup_id","");
                query.SET_VALUE(":grup_id",gruplar.at(i));
                if ( query.SELECT() EQ 0 ) {
                    return;
                }
                query.NEXT();

                int value = query.VALUE(0).toInt();

                query.PREPARE_UPDATE("adak_gruplar","grup_id","gruptaki_kayit_sayisi","grup_id=:grup_id AND gruptaki_kayit_sayisi > 0 ");
                query.SET_VALUE(":gruptaki_kayit_sayisi",(value - 1));
                query.SET_VALUE(":grup_id",gruplar.at(i));
                query.UPDATE();
            }
        }

        return;
    }

    query.PREPARE_INSERT("adak_kaydin_gruplari","id", "record_id,gruplar,module_id,program_id ");

    query.SET_VALUE(":record_id", record_id    );
    query.SET_VALUE(":gruplar",   QVariant(gruplar_str).toByteArray() );
    query.SET_VALUE(":module_id", module_id    );
    query.SET_VALUE(":program_id",program_id   );

    query.INSERT();

    for ( int i = 0 ; i < grup_idleri->size() ; i++ ) {
        query.PREPARE_SELECT("adak_gruplar","gruptaki_kayit_sayisi","grup_id=:grup_id","");
        query.SET_VALUE(":grup_id",grup_idleri->at(i));
        if ( query.SELECT() EQ 0 ) {
            return;
        }
        query.NEXT();

        int value = query.VALUE(0).toInt();

        query.PREPARE_UPDATE("adak_gruplar","grup_id","gruptaki_kayit_sayisi","grup_id=:grup_id");
        query.SET_VALUE(":gruptaki_kayit_sayisi",(value+1));
        query.SET_VALUE(":grup_id",grup_idleri->at(i));
        query.UPDATE();;
    }
}
Example #4
0
void SUBE_CREATE_DEFAULT_SUBE_DEPO_UNITE_ENT_HESAPLARI()
{
    SQL_QUERY query ( DB );

    query.PREPARE_SELECT ( "sub_subeler","sube_id" );
    if ( query.SELECT() > 0 ) {
        return;
    }

    query.PREPARE_INSERT   (   " sub_subeler","sube_id","sube_kodu, sube_adi,sube_port_cekler_hsp_id, "
                               " sube_tah_cekler_hsp_id,           sube_tem_cekler_hsp_id,           sube_kar_cekler_hsp_id, "
                               " sube_port_snt_hsp_id,             sube_tah_snt_hsp_id,              sube_tem_snt_hsp_id, "
                               " sube_pro_snt_hsp_id,              sube_port_snt_ileri_trh_hsp_id,   sube_tah_snt_ileri_trh_hsp_id, "
                               " sube_tem_snt_ileri_trh_hsp_id,    sube_borc_snt_hsp_id,             sube_borc_snt_ileri_trh_hsp_id, "
                               " sube_sup_alacaklar_hsp_id,        sube_tah_edlmyn_cekler_hsp_id,    sube_tah_edlmyn_snt_hsp_id, "
                               " sube_yurtici_satis_hsp_id,        sube_hizmet_urt_maliyet_hsp_id, "
                               " sube_prs_gdrlr_hsp_id         , sube_sarf_malzemeleri_hsp_id ,"
                               " sube_imalattan_giris_hsp_id    , "
                               " kasa_ent_hesap_id              ,                                    "
                               " cari_alici_ent_hesap_id        , cari_satici_ent_hesap_id ,         "
                               " banka_ent_hesap_id             , ver_cek_ent_hesap_id             , "
                               " odeme_emirleri_ent_hesap_id    ,                                    "
                               " pos_ent_hesap_id               ,                                    "
                               " kk_ent_hesap_id                , prk_gider_ent_hesap_id           , "
                               " urunler_ent_hesap_id           ,                                    "
                               " hizmetler_ent_hesap_id         , demirbaslar_ent_hesap_id,          "
                               " pos_kom_gideri_ent_hesap_id    ,                                    "
                               " prs_avanslari_ent_hesap_id     , personel_borclari_ent_hesap_id   , "
                               " prs_damga_vergisi_ent_hesap_id , personel_vergi_ent_hesap_id      , "
                               " prk_gelir_ent_hesap_id         ,                                    "
                               " prs_ssk_isci_payi_hesap_id     ,                                    "
                               " prs_ssk_isveren_payi_hesap_id  ,                                    "
                               " prs_issizlik_sgk_isci_hsp_id   ,                                    "
                               " prs_issizlik_sgk_isv_hsp_id    ,                                    "
                               " asg_gecim_ind_hesap_id         ,                                    "
                               " isveren_payi_giderleri_hps_id  ,                                    "
                               " bir_amortismanlar_hsp_id       ,                                    "
                               " amor_giderleri_hsp_id          ,                                    "
                               " sgdp_prim_yuzde_isc_hsp_id     , sgdp_prim_yuzde_isv_hsp_id        ,"
                               " kidem_tazminati_hesap_id       , ihbar_tazminati_hesap_id          ,"
                               " dmr_satis_kar_ent_hesap_id     , dmr_satis_zarar_ent_hesap_id      ,"
                               " sendika_odeme_hesap_id         , smmm_alinan_hizmet_hesap_id       ,"
                               " smmm_gelir_vergisi_hesap_id    , smmm_satilan_hizmet_hesap_id      ,"
                               " isy_5510_nolu_kanun_hesap_id   , satistan_iade_hesap_id            ,"
                               " ortaklara_borclar_hesap_id   ");

    query.SET_VALUE ( ":sube_kodu"                          , "MRK"                   );
    query.SET_VALUE ( ":sube_adi"                           , "MERKEZ"                );
    query.SET_VALUE ( ":sube_port_cekler_hsp_id"            , MUH_GET_HESAP_ID("101") );
    query.SET_VALUE ( ":sube_tah_cekler_hsp_id"             , MUH_GET_HESAP_ID("101") );
    query.SET_VALUE ( ":sube_tem_cekler_hsp_id"             , MUH_GET_HESAP_ID("101") );
    query.SET_VALUE ( ":sube_kar_cekler_hsp_id"             , MUH_GET_HESAP_ID("101") );
    query.SET_VALUE ( ":sube_port_snt_hsp_id"               , MUH_GET_HESAP_ID("121") );
    query.SET_VALUE ( ":sube_tah_snt_hsp_id"                , MUH_GET_HESAP_ID("121") );
    query.SET_VALUE ( ":sube_tem_snt_hsp_id"                , MUH_GET_HESAP_ID("121") );
    query.SET_VALUE ( ":sube_pro_snt_hsp_id"                , MUH_GET_HESAP_ID("121") );
    query.SET_VALUE ( ":sube_port_snt_ileri_trh_hsp_id"     , MUH_GET_HESAP_ID("221") );
    query.SET_VALUE ( ":sube_tah_snt_ileri_trh_hsp_id"      , MUH_GET_HESAP_ID("221") );
    query.SET_VALUE ( ":sube_tem_snt_ileri_trh_hsp_id"      , MUH_GET_HESAP_ID("221") );
    query.SET_VALUE ( ":sube_borc_snt_hsp_id"               , MUH_GET_HESAP_ID("321") );
    query.SET_VALUE ( ":sube_borc_snt_ileri_trh_hsp_id"     , MUH_GET_HESAP_ID("421") );
    query.SET_VALUE ( ":sube_sup_alacaklar_hsp_id"          , MUH_GET_HESAP_ID("128") );
    query.SET_VALUE ( ":sube_tah_edlmyn_cekler_hsp_id"      , MUH_GET_HESAP_ID("101") );
    query.SET_VALUE ( ":sube_tah_edlmyn_snt_hsp_id"         , MUH_GET_HESAP_ID("121") );
    query.SET_VALUE ( ":sube_yurtici_satis_hsp_id"          , MUH_GET_HESAP_ID("600") );
    query.SET_VALUE ( ":sube_hizmet_urt_maliyet_hsp_id"     , MUH_GET_HESAP_ID("740") );
    query.SET_VALUE ( ":sube_prs_gdrlr_hsp_id"              , MUH_GET_HESAP_ID("770") );
    query.SET_VALUE ( ":sube_sarf_malzemeleri_hsp_id"       , MUH_GET_HESAP_ID("710") );
    query.SET_VALUE ( ":sube_imalattan_giris_hsp_id"        , MUH_GET_HESAP_ID("152") );
    query.SET_VALUE ( ":kasa_ent_hesap_id"                  , MUH_GET_HESAP_ID("100") );
    query.SET_VALUE ( ":cari_alici_ent_hesap_id"            , MUH_GET_HESAP_ID("120") );
    query.SET_VALUE ( ":cari_satici_ent_hesap_id"           , MUH_GET_HESAP_ID("320") );
    query.SET_VALUE ( ":banka_ent_hesap_id"                 , MUH_GET_HESAP_ID("102") );
    query.SET_VALUE ( ":ver_cek_ent_hesap_id"               , MUH_GET_HESAP_ID("103") );
    query.SET_VALUE ( ":odeme_emirleri_ent_hesap_id"        , MUH_GET_HESAP_ID("103") );
    query.SET_VALUE ( ":pos_ent_hesap_id"                   , MUH_GET_HESAP_ID("108") );
    query.SET_VALUE ( ":kk_ent_hesap_id"                    , MUH_GET_HESAP_ID("300") );
    query.SET_VALUE ( ":prk_gider_ent_hesap_id"             , MUH_GET_HESAP_ID("770") );
    query.SET_VALUE ( ":urunler_ent_hesap_id"               , MUH_GET_HESAP_ID("153") );
    query.SET_VALUE ( ":hizmetler_ent_hesap_id"             , MUH_GET_HESAP_ID("770") );
    query.SET_VALUE ( ":demirbaslar_ent_hesap_id"           , MUH_GET_HESAP_ID("255") );
    query.SET_VALUE ( ":pos_kom_gideri_ent_hesap_id"        , MUH_GET_HESAP_ID("780") );
    query.SET_VALUE ( ":prs_avanslari_ent_hesap_id"         , MUH_GET_HESAP_ID("196") );
    query.SET_VALUE ( ":personel_borclari_ent_hesap_id"     , MUH_GET_HESAP_ID("335") );
    query.SET_VALUE ( ":prs_damga_vergisi_ent_hesap_id"     , MUH_GET_HESAP_ID("360") );
    query.SET_VALUE ( ":personel_vergi_ent_hesap_id"        , MUH_GET_HESAP_ID("360") );
    query.SET_VALUE ( ":prk_gelir_ent_hesap_id"             , MUH_GET_HESAP_ID("600") );
    query.SET_VALUE ( ":prs_ssk_isci_payi_hesap_id"         , MUH_GET_HESAP_ID("361") );
    query.SET_VALUE ( ":prs_ssk_isveren_payi_hesap_id"      , MUH_GET_HESAP_ID("361") );
    query.SET_VALUE ( ":prs_issizlik_sgk_isci_hsp_id"       , MUH_GET_HESAP_ID("361") );
    query.SET_VALUE ( ":prs_issizlik_sgk_isv_hsp_id"        , MUH_GET_HESAP_ID("361") );
    query.SET_VALUE ( ":asg_gecim_ind_hesap_id"             , MUH_GET_HESAP_ID("360") );
    query.SET_VALUE ( ":isveren_payi_giderleri_hps_id"      , MUH_GET_HESAP_ID("770") );
    query.SET_VALUE ( ":bir_amortismanlar_hsp_id"           , MUH_GET_HESAP_ID("257") );
    query.SET_VALUE ( ":amor_giderleri_hsp_id"              , MUH_GET_HESAP_ID("770") );
    query.SET_VALUE ( ":sgdp_prim_yuzde_isc_hsp_id"         , MUH_GET_HESAP_ID("361") );
    query.SET_VALUE ( ":sgdp_prim_yuzde_isv_hsp_id"         , MUH_GET_HESAP_ID("361") );
    query.SET_VALUE ( ":kidem_tazminati_hesap_id"           , MUH_GET_HESAP_ID("770") );
    query.SET_VALUE ( ":ihbar_tazminati_hesap_id"           , MUH_GET_HESAP_ID("770") );
    query.SET_VALUE ( ":dmr_satis_kar_ent_hesap_id"         , MUH_GET_HESAP_ID("679") );
    query.SET_VALUE ( ":dmr_satis_zarar_ent_hesap_id"       , MUH_GET_HESAP_ID("689") );
    query.SET_VALUE ( ":sendika_odeme_hesap_id"             , MUH_GET_HESAP_ID("770") );
    query.SET_VALUE ( ":smmm_alinan_hizmet_hesap_id"        , MUH_GET_HESAP_ID("770") );
    query.SET_VALUE ( ":smmm_gelir_vergisi_hesap_id"        , MUH_GET_HESAP_ID("360") );
    query.SET_VALUE ( ":smmm_satilan_hizmet_hesap_id"       , MUH_GET_HESAP_ID("600") );
    query.SET_VALUE ( ":isy_5510_nolu_kanun_hesap_id"       , MUH_GET_HESAP_ID("602") );
    query.SET_VALUE ( ":satistan_iade_hesap_id"             , MUH_GET_HESAP_ID("610") );
    query.SET_VALUE ( ":ortaklara_borclar_hesap_id"         , MUH_GET_HESAP_ID("331") );

    int sube_id = query.INSERT();

    query.PREPARE_INSERT ( "sub_depolar ","depo_id", "depo_kodu, depo_adi, sube_id ");

    query.SET_VALUE      ( ":sube_id", sube_id );
    query.SET_VALUE      (":depo_kodu","001");
    query.SET_VALUE      (":depo_adi","MERKEZ DEPO");

    int depo_id = query.INSERT();


    query.PREPARE_INSERT ( "sub_uniteler ","unite_id", "sube_id, unite_adi, order_number, "
                             "bilgisayar_id, depo_id, irsaliye_belge_seri, fatura_belge_seri, "
                             "tahsilat_makbuzu_belge_seri, odeme_makbuzu_belge_seri, "
                             "irsaliye_belge_numarasi, fatura_belge_numarasi, "
                             "tahsilat_makbuzu_belge_num, odeme_makbuzu_belge_num , "
                             "muh_kasa_hesap_id, irsaliyeli_fat_belge_seri , "
                             "irsaliyeli_fat_belge_numarasi ");

    query.SET_VALUE      ( ":unite_adi"                     , "MERKEZ KASA");
    query.SET_VALUE      ( ":order_number"                  , 1024);
    query.SET_VALUE      ( ":irsaliyeli_fat_belge_seri"     , "A");
    query.SET_VALUE      ( ":irsaliye_belge_seri"           , "A");
    query.SET_VALUE      ( ":fatura_belge_seri"             , "A");
    query.SET_VALUE      ( ":tahsilat_makbuzu_belge_seri"   , "A");
    query.SET_VALUE      ( ":odeme_makbuzu_belge_seri"      , "A");
    query.SET_VALUE      ( ":irsaliyeli_fat_belge_numarasi" , QVariant ( 1 ).toString() );
    query.SET_VALUE      ( ":irsaliye_belge_numarasi"       , QVariant ( 1 ).toString() );
    query.SET_VALUE      ( ":fatura_belge_numarasi"         , QVariant ( 1 ).toString() );
    query.SET_VALUE      ( ":tahsilat_makbuzu_belge_num"    , QVariant ( 1 ).toString());
    query.SET_VALUE      ( ":odeme_makbuzu_belge_num"       , QVariant ( 1 ).toString() );
    query.SET_VALUE      ( ":sube_id"                       , sube_id );
    query.SET_VALUE      ( ":bilgisayar_id"                 , BILGISAYAR_ID() );
    query.SET_VALUE      ( ":depo_id"                       , depo_id );
    query.SET_VALUE      ( ":muh_kasa_hesap_id"             , MUH_GET_HESAP_ID("100"));

    query.INSERT();
}
void FAT_TOPLU_FATURALASTIR_ARAMA::FATURALASTIR( int p_irsaliye_fis_id )
{
    SQL_QUERY query ( DB );

    FATURA_FISI_STRUCT          * FATURA_FISI           =   new FATURA_FISI_STRUCT;
    FATURA_FIS_SATIRI_STRUCT    * FATURA_FIS_SATIRI     =   new FATURA_FIS_SATIRI_STRUCT;

    FATURA_FISI->KDV_ORANLARI_ARRAY                     =   new double  [KDV_OTV_ORANLARI_SAYISI];
    FATURA_FISI->KDV_HESAPLARI_ID_ARRAY                 =   new int     [KDV_OTV_ORANLARI_SAYISI];
    FATURA_FISI->KDV_ORANINA_GORE_TUTARLAR_ARRAY        =   new double  [KDV_OTV_ORANLARI_SAYISI];

    FATURA_FISI->OTV_ORANLARI_ARRAY                     =   new double  [KDV_OTV_ORANLARI_SAYISI];
    FATURA_FISI->OTV_HESAPLARI_ID_ARRAY                 =   new int     [KDV_OTV_ORANLARI_SAYISI];
    FATURA_FISI->OTV_ORANINA_GORE_TUTARLAR_ARRAY        =   new double  [KDV_OTV_ORANLARI_SAYISI];

    FATURA_FISI->TEVKIFATLI_KDV_HESAPLARI_ID_ARRAY      =   new int     [KDV_OTV_ORANLARI_SAYISI];

    FATURA_CLEAR_FIS_STRUCT ( FATURA_FISI );

    FATURA_KDV_OTV_DEGISKENLERINE_ILK_DEGERLERINI_YAZ  ( FATURA_FISI );

    STK_IRS_FIS_STRUCT       * STK_FIS        = new STK_IRS_FIS_STRUCT;
    STK_IRS_FIS_SATIR_STRUCT * STK_FIS_SATIRI = new STK_IRS_FIS_SATIR_STRUCT;

    STK_IRS_CLEAR_FIS_STRUCT( STK_FIS );

    STK_IRS_FIS_BILGILERINI_OKU( p_irsaliye_fis_id, STK_FIS );


    QString     cari_hesap_adresi;

    cari_hesap_adresi = CARI_GET_ADRES_BILGILERI( STK_FIS->cari_hesap_id );


    DB->START_TRANSACTION   ();

    //FATURA KAYDI EKLENECEK

    SUBE_UNITE_BILGILERI_STRUCT UNITE_BILG;

    SUBE_UNITE_BILGILERI_OKU( &UNITE_BILG, SUBE_GET_UNITE_ID() );

    FATURA_FISI->belge_numarasi                 = UNITE_BILG.fatura_belge_numarasi;
    FATURA_FISI->belge_seri                     = UNITE_BILG.fatura_belge_seri;

    FATURA_FISI->fis_no                         = FAT_SIRADAKI_FIS_NO_AL ( m_ui->adakDate_fatura_tarihi->DATE() );
    FATURA_FISI->aciklama                       = tr ( "Fatura, toplu irsaliye faturalaştırma işlemi sonucu üretilmiştir." );
    FATURA_FISI->fatura_tarihi                  = m_ui->adakDate_fatura_tarihi->DATE();
    FATURA_FISI->fatura_turu                    = ENUM_FAT_IRSALIYESIZ_SATIS_FATURASI;
    FATURA_FISI->fatura_alis_satis_turu         = ENUM_SATIS_IRSALIYESI_FATURASI;
    FATURA_FISI->acik_kapali_fatura             = ENUM_ACIK_FATURA;
    FATURA_FISI->cari_hesap_id                  = STK_FIS->cari_hesap_id;
    FATURA_FISI->cari_hesap_ismi                = STK_FIS->cari_hesap_ismi;
    FATURA_FISI->cari_hesap_adresi              = cari_hesap_adresi;
    FATURA_FISI->vergi_dairesi                  = STK_FIS->vergi_dairesi;
    FATURA_FISI->vergi_numarasi                 = STK_FIS->vergi_numarasi;
    FATURA_FISI->modul_id                       = FATURA_MODULU;
    FATURA_FISI->program_id                     = E9_PROGRAMI;
    FATURA_FISI->fatura_irsaliyelestirildi_mi   = 1;

    int fatura_fis_id = FATURA_FISI_EKLE ( FATURA_FISI );

    //FATURA SATIRLARI EKLENECEK
    //faturaya referans eden irsaliyeler kaydediliyor.

    query.PREPARE_INSERT("fat_irs_baglantisi" , "kayit_id" , "fatura_id, irsaliye_id");

    query.SET_VALUE ( ":fatura_id"   , fatura_fis_id      );
    query.SET_VALUE ( ":irsaliye_id" , p_irsaliye_fis_id  );
    query.INSERT    ();

    STK_UPDATE_IRSALIYE_FATURALASTIRILDI_MI( p_irsaliye_fis_id , 1);

    int order_number = 0;

    QList<int> irs_str_id_list = STK_GET_FIS_SATIRI_ID_LIST( p_irsaliye_fis_id );

    for ( int i = 0 ; i < irs_str_id_list.size() ; i++ ) {

        STK_IRS_CLEAR_SATIR_STRUCT   ( STK_FIS_SATIRI );

        STK_IRS_SATIR_BILGILERINI_OKU( irs_str_id_list.at( i ), STK_FIS_SATIRI );

        STK_FATURALANAN_MIKTARI_GUNCELLE( irs_str_id_list.at( i ) , STK_FIS_SATIRI->satirdaki_urun_miktari );

        order_number               += 1024;

        FATURA_CLEAR_FIS_SATIRI_STRUCT ( FATURA_FIS_SATIRI );

        FATURA_FIS_SATIRI->doviz_id   = STK_FIS_SATIRI->doviz_id;
        FATURA_FIS_SATIRI->doviz_kodu = STK_FIS_SATIRI->doviz_kodu;
        FATURA_FIS_SATIRI->fis_id     = fatura_fis_id;

        if ( STK_FIS_SATIRI->satir_tutari > 0 ) {
            FATURA_FIS_SATIRI->fiyat_irsaliyeden_alindi = 1;
        }

        FATURA_FIS_SATIRI->modul_id                         = FATURA_FISI->modul_id;
        FATURA_FIS_SATIRI->program_id                       = FATURA_FISI->program_id;
        FATURA_FIS_SATIRI->order_number                     = order_number;
        FATURA_FIS_SATIRI->irsaliyelenen_miktar             = STK_FIS_SATIRI->satirdaki_urun_miktari;
        FATURA_FIS_SATIRI->isk_oncesi_urun_birim_fiyati     = STK_FIS_SATIRI->isk_oncesi_urun_birim_fiyati;
        FATURA_FIS_SATIRI->isk_sonrasi_urun_birim_fiyati    = STK_FIS_SATIRI->isk_sonrasi_urun_birim_fiyati;
        FATURA_FIS_SATIRI->kdv_dahil_mi                     = STK_FIS_SATIRI->kdv_dahil_mi;
        FATURA_FIS_SATIRI->kdv_orani                        = STK_FIS_SATIRI->kdv_orani;
        FATURA_FIS_SATIRI->otv_orani                        = STK_FIS_SATIRI->otv_orani;
        FATURA_FIS_SATIRI->satirdaki_urun_miktari           = STK_FIS_SATIRI->satirdaki_urun_miktari;
        FATURA_FIS_SATIRI->satir_iskonto_yuzdesi            = STK_FIS_SATIRI->iskonto_yuzdesi;
        FATURA_FIS_SATIRI->satir_iskonto_tutari             = STK_FIS_SATIRI->iskonto_tutari;
        FATURA_FIS_SATIRI->satir_kdv_dahil_tutar            = STK_FIS_SATIRI->satir_kdv_dahil_tutar;
        FATURA_FIS_SATIRI->satir_kdv_tutari                 = STK_FIS_SATIRI->satir_kdv_tutari;
        FATURA_FIS_SATIRI->satir_otv_dahil_tutar            = STK_FIS_SATIRI->satir_otv_dahil_tutar;
        FATURA_FIS_SATIRI->satir_otv_tutari                 = STK_FIS_SATIRI->satir_otv_tutari;
        FATURA_FIS_SATIRI->satir_vergi_haric_tutar          = STK_FIS_SATIRI->satir_vergi_haric_tutar;
        FATURA_FIS_SATIRI->satir_tutari                     = STK_FIS_SATIRI->satir_tutari;
        FATURA_FIS_SATIRI->temel_birim_katsayisi            = STK_FIS_SATIRI->temel_birim_katsayisi;
        FATURA_FIS_SATIRI->t_is_son_birim_fiyati            = STK_FIS_SATIRI->t_is_sonrasi_birim_fiyat;
        FATURA_FIS_SATIRI->t_is_son_satir_tutari            = STK_FIS_SATIRI->t_is_sonrasi_satir_tutari;
        FATURA_FIS_SATIRI->t_is_son_str_vergi_haric_tutar   = STK_FIS_SATIRI->t_is_sonrasi_vergi_haric_tutar;
        FATURA_FIS_SATIRI->t_is_son_satir_otv_tutari        = STK_FIS_SATIRI->t_is_sonrasi_otv_tutari;
        FATURA_FIS_SATIRI->t_is_son_satir_otv_dahil_tutar   = STK_FIS_SATIRI->t_is_sonrasi_otv_dahil_tutar;
        FATURA_FIS_SATIRI->t_is_son_satir_kdv_tutari        = STK_FIS_SATIRI->t_is_sonrasi_kdv_tutari;
        FATURA_FIS_SATIRI->t_is_son_satir_kdv_dahil_tutar   = STK_FIS_SATIRI->t_is_sonrasi_kdv_dahil_tutar;
        FATURA_FIS_SATIRI->urun_adi                         = STK_FIS_SATIRI->urun_adi;
        FATURA_FIS_SATIRI->urun_birimi                      = STK_FIS_SATIRI->urun_birimi;
        FATURA_FIS_SATIRI->urun_id                          = STK_FIS_SATIRI->urun_id;

        //irsaliye satirinda fiyat varsa ,fatura satirina aynen kaydedilir.Degistirilemez.

        int fis_satiri_id = FATURA_FIS_SATIRI_EKLE ( FATURA_FISI, FATURA_FIS_SATIRI );

        SQL_QUERY insert_query( DB );

        insert_query.PREPARE_INSERT("fat_irs_satir_baglantisi" , "kayit_id" ,
                                    "fatura_satiri_id, irsaliye_satiri_id");

        insert_query.SET_VALUE  ( ":fatura_satiri_id",      fis_satiri_id );
        insert_query.SET_VALUE  ( ":irsaliye_satiri_id",    irs_str_id_list.at( i ) );
        insert_query.INSERT     ();
    }

    int hatali_fatura_mi = 0;


    query.PREPARE_SELECT ( "fat_fatura_satirlari","satir_tutari" ,"fis_id = :fis_id" );
    query.SET_VALUE      ( ":fis_id" , fatura_fis_id );

    if ( query.SELECT() > 0 ) {
        while ( query.NEXT() EQ true )  {
            if ( query.VALUE(0).toDouble() EQ 0 ) {
                //Fatura satirlarinda tutar bilgisi yoksa fatura hatali kabul edilir.
                hatali_fatura_mi = 1;
                break;
            }
        }
    }


    FATURA_FISI->iskonto_tutari  = ROUND ( FATURA_FISI->brut_tutar - FATURA_FISI->ara_toplam );
    FATURA_FISI->iskonto_yuzdesi = ROUND ( ( ( FATURA_FISI->iskonto_tutari ) / FATURA_FISI->brut_tutar ) * 100 );


    query.PREPARE_UPDATE ( "fat_faturalar ","fis_id",
                           "iskonto_yuzdesi , "
                           "iskonto_tutari,  "
                           "hatali_fatura_mi  ",
                           "fis_id = :fis_id" );

    query.SET_VALUE ( ":iskonto_yuzdesi",               FATURA_FISI->iskonto_yuzdesi );
    query.SET_VALUE ( ":iskonto_tutari",                FATURA_FISI->iskonto_tutari  );
    query.SET_VALUE ( ":hatali_fatura_mi",              hatali_fatura_mi             );
    query.SET_VALUE ( ":fis_id",                        fatura_fis_id                       );

    query.UPDATE();

    QString cari_hesap_kodu_adi = m_ui->searchEdit_cari_hesap_kodu->GET_TEXT() + "    " + m_ui->lineEdit_cari_hesap_ismi->text();
    QString fatura_no           = "<font color = \"red\">"+ QVariant ( FATURA_FISI->fis_no ).toString() + "</font>";

    if ( hatali_fatura_mi EQ 1 ) {
        QMessageBox::warning ( this, tr("Hatalı Fatura Oluşturldu"), tr("%1 cari hesabına ait, verilen tarih aralığındaki "
                                                                        "irsaliyeler faturalaştırılırken %2 'nolu "
                                                                        "hatalı fatura oluşturuldu.").arg ( cari_hesap_kodu_adi )
                                                                                                     .arg ( fatura_no ) );
        SET_FOCUS( m_ui->searchEdit_cari_hesap_kodu );

        delete FATURA_FISI;
        delete FATURA_FIS_SATIRI;

        DB->COMMIT_TRANSACTION();
        return;
    }

    FAT_FATURA_ENT_FISLERINI_OLUSTUR( FATURA_FISI, fatura_fis_id );

    QString log_detaylari = QObject::tr("Toplu İrsaliye Faturalaştırma , Cari Hesap Kodu / Adı : ");
    log_detaylari.append ( m_ui->searchEdit_cari_hesap_kodu->GET_TEXT() + "  " + m_ui->lineEdit_cari_hesap_ismi->text()
                         + " , Fatura Tarihi : " + m_ui->adakDate_fatura_tarihi->QDATE().toString("dd MMMM yyyy")
                         +" \nİrsaliye Tarih Aralığı : " + m_ui->adakDate_irs_baslangic_tarihi->QDATE().toString("dd MMMM yyyy")
                         + " - " + m_ui->adakDate_irs_bitis_tarihi->QDATE().toString("dd MMMM yyyy") +
                         "\nŞube Kodu / Adı : " + m_ui->searchEdit_sube_kodu->GET_TEXT() + "  " + m_ui->lineEdit_sube_ismi->text());

    E9_LOG_KAYDI_EKLE ( FATURA_MODULU , LOG_FAT_TOPLU_FATURALASTIRMA , -1, log_detaylari );

    DB->COMMIT_TRANSACTION();

    delete FATURA_FISI;
    delete FATURA_FIS_SATIRI;
    delete STK_FIS;
    delete STK_FIS_SATIRI;

    accept();
}
Example #6
0
int BNK_DEFTER_FIS_SATIRI_EKLE ( BNK_DEFTER_FIS_STRUCT * P_FIS, BNK_DEFTER_FIS_SATIRI_STRUCT * P_FIS_SATIRI, int p_fis_satiri_id , bool base_fis_satiri_eklenecek ,ADAK_SQL * P_GELEN_DB)
{
    ADAK_SQL * USE_DB;

    if ( P_GELEN_DB EQ NULL ) {
        USE_DB = DB;
    }
    else {
        USE_DB = P_GELEN_DB;
    }

    SQL_QUERY query      ( USE_DB );

    query.PREPARE_SELECT ( "bnk_defter_fisler ","toplam_hesaba_giren,toplam_hesaptan_cikan,   "
                           "fis_tarihi, last_order_number, base_fis_id,         "
                           "modul_id, program_id, para_birim_id                 ",
                           "fis_id = :fis_id       " );

    query.SET_VALUE      ( ":fis_id" , P_FIS_SATIRI->fis_id );

    if ( query.SELECT() EQ 0 ) {
        return 0;
    }
    query.NEXT();

    double    toplam_hesaba_giren       = query.VALUE ( 0 ).toDouble();
    double    toplam_hesaptan_cikan     = query.VALUE ( 1 ).toDouble();
    QString   tarih                     = query.VALUE ( 2 ).toString();
    int       last_order_number         = query.VALUE ( 3 ).toInt();
    int       base_fis_id               = query.VALUE ( 4 ).toInt();
    int       modul_id                  = query.VALUE ( 5 ).toInt();
    int       program_id                = query.VALUE ( 6 ).toInt();
    int       para_birim_id             = query.VALUE ( 7 ).toInt();
    int       gun_no                    = MALI_YIL_ARRAY_INDIS ( QDate::fromString( tarih, "yyyy.MM.dd" ) );


    if ( P_FIS->modul_id NE modul_id OR P_FIS->program_id NE program_id OR P_FIS->base_fis_id NE base_fis_id ) {
        return 0;
    }

    if ( P_FIS_SATIRI->order_number EQ 0 ) {
        P_FIS_SATIRI->order_number = last_order_number + 1024;
    }


    double hesaba_giren     = 0.00;
    double hesaptan_cikan   = 0.00;


    hesaba_giren    = P_FIS_SATIRI->hesaba_giren;
    hesaptan_cikan  = P_FIS_SATIRI->hesaptan_cikan;

    int satir_id = p_fis_satiri_id;

    if ( base_fis_satiri_eklenecek EQ true ) {

        query.PREPARE_INSERT ( "bnk_defter_fis_satirlari","fis_satiri_id" ,
                               "fis_id, aciklama,                         "
                               "hesaba_giren,hesaptan_cikan,              "
                               "base_record_id,                           "
                               "order_number, hesap_turu, hesap_id,       "
                               "program_id, modul_id,                     "
                               "kaydedilecek_sirket                       ");

        query.SET_VALUE ( ":fis_id"                  , P_FIS_SATIRI->fis_id                       );
        query.SET_VALUE ( ":aciklama"                , P_FIS_SATIRI->aciklama                     );
        query.SET_VALUE ( ":hesaba_giren"            , ROUND( hesaba_giren )                      );
        query.SET_VALUE ( ":hesaptan_cikan"          , ROUND( hesaptan_cikan )                    );
        query.SET_VALUE ( ":base_record_id"          , P_FIS_SATIRI->base_record_id               );
        query.SET_VALUE ( ":order_number"            , P_FIS_SATIRI->order_number                 );
        query.SET_VALUE ( ":hesap_turu"              , P_FIS_SATIRI->hesap_turu                   );
        query.SET_VALUE ( ":hesap_id"                , P_FIS_SATIRI->hesap_id                     );
        query.SET_VALUE ( ":program_id"              , P_FIS_SATIRI->program_id                   );
        query.SET_VALUE ( ":modul_id"                , P_FIS_SATIRI->modul_id                     );
        query.SET_VALUE ( ":kaydedilecek_sirket"     , P_FIS_SATIRI->kaydedilecek_sirket          );

        satir_id = query.INSERT();
    }

    if ( P_FIS->modul_id EQ BANKA_MODULU ) {
        if ( base_fis_id EQ 0 ) {
            base_fis_id = P_FIS_SATIRI->fis_id;
        }
        if ( P_FIS_SATIRI->base_record_id EQ 0 ) {
            P_FIS_SATIRI->base_record_id = satir_id;
        }
    }

    if ( P_FIS->fis_turu EQ ENUM_BANKA_ACILIS_FISI ) {
        gun_no = 0;
    }

    int hesap_no_id = P_FIS->hesap_no_id;

    if ( P_FIS->fis_turu EQ ENUM_BANKA_VIRMAN_FISI ) {
        hesap_no_id = P_FIS_SATIRI->hesap_id;
    }


    switch ( P_FIS_SATIRI->hesap_turu ) {

        case ENUM_BNK_KREDI_KARTI_HESABI:
                BANKA_HESAP_BAKIYELERINI_ARTTIR ( gun_no, hesap_no_id, hesaba_giren, hesaptan_cikan,
                                                  ENUM_BNK_KREDI_KARTI_HESABI, P_FIS->kaydedilecek_sirket ,USE_DB);
            break;
        case ENUM_BNK_POS_HESABI:
                BANKA_HESAP_BAKIYELERINI_ARTTIR ( gun_no, hesap_no_id, hesaba_giren, hesaptan_cikan,
                                                  ENUM_BNK_POS_HESABI, P_FIS->kaydedilecek_sirket ,USE_DB);

           break;
        case ENUM_BNK_BANKA_HESABI:
                BANKA_HESAP_BAKIYELERINI_ARTTIR ( gun_no, hesap_no_id, hesaba_giren, hesaptan_cikan,
                                                  ENUM_BNK_BANKA_HESABI , P_FIS->kaydedilecek_sirket ,USE_DB);
           break;
        default:
            break;
    }

    // Muhasebeye temel para birimi cinsinden gitmesi gerekir...
    if (  para_birim_id NE DVZ_GET_TEMEL_PARA_BIRIMI_ID() ) {

        if ( P_FIS_SATIRI->hesaba_giren > 0.00 ) {
            hesaba_giren    = ROUND( P_FIS_SATIRI->hesaba_giren * P_FIS_SATIRI->doviz_kuru );
            hesaptan_cikan  = 0.00;
        }
        else {
            hesaba_giren    = 0.00;
            hesaptan_cikan  = ROUND( P_FIS_SATIRI->hesaptan_cikan * P_FIS_SATIRI->doviz_kuru );
        }

    }
    else {
        hesaba_giren    = P_FIS_SATIRI->hesaba_giren;
        hesaptan_cikan  = P_FIS_SATIRI->hesaptan_cikan;
    }

    if ( P_FIS->fis_turu NE ENUM_BANKA_ACILIS_FISI ) {

        // muhasebe kodu tespit ediliyor
        int muh_id = 0;
        switch ( P_FIS_SATIRI->hesap_turu ) {

            case    ENUM_BNK_BANKA_HESABI :
                query.PREPARE_SELECT ( "bnk_hesaplar","muh_hesap_id","hesap_no_id = :hesap_no_id");
                query.SET_VALUE      ( ":hesap_no_id" , P_FIS_SATIRI->hesap_id );
                if ( query.SELECT() EQ  0 ) {
                    break;
                }
                query.NEXT();
                muh_id = query.VALUE(0).toInt();
                break;
            case    ENUM_BNK_POS_HESABI :
                query.PREPARE_SELECT ( "bnk_hesabin_poslari","muh_hesap_id","pos_id = :pos_id AND hesap_no_id = :hesap_no_id");
                query.SET_VALUE      ( ":pos_id"      , P_FIS_SATIRI->hesap_id );
                query.SET_VALUE      ( ":hesap_no_id" , P_FIS->hesap_no_id );
                if ( query.SELECT() EQ 0 ) {
                    break;
                }
                query.NEXT();
                muh_id = query.VALUE(0).toInt();
                break;
            case    ENUM_BNK_KREDI_KARTI_HESABI :
                query.PREPARE_SELECT ( "bnk_hesabin_kredi_kartlari","muh_hesap_id","kredi_karti_id = :kredi_karti_id AND hesap_no_id = :hesap_no_id ");
                query.SET_VALUE      ( ":kredi_karti_id"  , P_FIS_SATIRI->hesap_id );
                query.SET_VALUE      ( ":hesap_no_id"     , P_FIS->hesap_no_id );
                if ( query.SELECT() EQ  0 ) {
                    break;
                }
                query.NEXT();
                muh_id = query.VALUE(0).toInt();
                break;

            case ENUM_BNK_KASA_HESABI:
                muh_id  = SUBE_GET_UNITE_MUH_KASA_HESABI_ID();
                break;

            case ENUM_BNK_MUHASEBE_HESABI:

                muh_id = P_FIS_SATIRI->hesap_id;
                break;
            case    ENUM_BNK_POS_KOMISYON_HESABI :
                query.PREPARE_SELECT ( "bnk_hesabin_poslari ","kom_hesap_id","pos_id = :pos_id AND hesap_no_id = :hesap_no_id");
                query.SET_VALUE      ( ":pos_id"      , P_FIS_SATIRI->hesap_id );
                query.SET_VALUE      ( ":hesap_no_id" , P_FIS->hesap_no_id );
                if ( query.SELECT() EQ 0 ) {
                    break;
                }
                query.NEXT();
                muh_id = query.VALUE(0).toInt();
                break;

            default :
                break;
        }


        double borc_tutari      = 0.00;
        double alacak_tutari    = 0.00;
        alacak_tutari           = hesaptan_cikan;
        borc_tutari             = hesaba_giren;

        MUH_FIS_STRUCT         * MUH_FIS          = new MUH_FIS_STRUCT;
        MUH_FIS_SATIRI_STRUCT  * MUH_FIS_SATIRI   = new MUH_FIS_SATIRI_STRUCT;

        // [ 1 ]

        if ( P_FIS->odm_emr_hesabi_etkilenecek_mi EQ 1 ) {
            if ( P_FIS_SATIRI->hesap_turu EQ ENUM_BNK_BANKA_HESABI ) {


                if ( alacak_tutari > 0.00 ) { // bankadan para cikiyor

                    // [ 2 ] Odeme emirleri ne alacak sonra  borc

                    SQL_QUERY f_query( DB );

                    int odeme_emirleri_hesap_id = 0;

                    f_query.PREPARE_SELECT( "bnk_hesaplar","odeme_emirleri_hesap_id","hesap_no_id = :hesap_no_id" );
                    f_query.SET_VALUE     ( ":hesap_no_id", P_FIS->hesap_no_id );

                    if ( f_query.SELECT() NE 0 ) {

                        f_query.NEXT();

                        odeme_emirleri_hesap_id = f_query.VALUE( 0 ).toInt();

                        MUH_CLEAR_FIS_STRUCT        ( MUH_FIS );
                        MUH_CLEAR_FIS_SATIRI_STRUCT ( MUH_FIS_SATIRI );


                        MUH_FIS_BILGILERINI_OKU ( MUH_FIS, P_FIS->muh_fis_id ,USE_DB);

                        MUH_FIS_SATIRI->aciklama             = P_FIS_SATIRI->aciklama;
                        MUH_FIS_SATIRI->borc_tutari          = borc_tutari;
                        MUH_FIS_SATIRI->alacak_tutari        = alacak_tutari;
                        MUH_FIS_SATIRI->fis_id               = P_FIS->muh_fis_id;
                        MUH_FIS_SATIRI->hesap_id             = odeme_emirleri_hesap_id;
                        MUH_FIS_SATIRI->base_record_id       = P_FIS_SATIRI->base_record_id;
                        MUH_FIS_SATIRI->program_id           = P_FIS_SATIRI->program_id;
                        MUH_FIS_SATIRI->modul_id             = P_FIS_SATIRI->modul_id;
                        MUH_FIS_SATIRI->kaydedilecek_sirket           = P_FIS_SATIRI->kaydedilecek_sirket ;

                        // hesaba giren
                        MUH_FIS_SATIRI_EKLE ( MUH_FIS, MUH_FIS_SATIRI ,USE_DB);

                        MUH_FIS_SATIRI->borc_tutari          = alacak_tutari;
                        MUH_FIS_SATIRI->alacak_tutari        = borc_tutari;
                        // hesaptan cikan
                        MUH_FIS_SATIRI_EKLE ( MUH_FIS, MUH_FIS_SATIRI ,USE_DB);

                    }
                    // [ 2 ]
                }
            }
        }
        // [ 1 ]

        //Muhasebe modulune fis_satiri uretiliyor

        MUH_CLEAR_FIS_STRUCT        ( MUH_FIS );
        MUH_CLEAR_FIS_SATIRI_STRUCT ( MUH_FIS_SATIRI );

        MUH_FIS_BILGILERINI_OKU ( MUH_FIS, P_FIS->muh_fis_id ,USE_DB);

        MUH_FIS_SATIRI->aciklama             = P_FIS_SATIRI->aciklama;
        MUH_FIS_SATIRI->borc_tutari          = borc_tutari;
        MUH_FIS_SATIRI->alacak_tutari        = alacak_tutari;
        MUH_FIS_SATIRI->fis_id               = P_FIS->muh_fis_id;
        MUH_FIS_SATIRI->hesap_id             = muh_id;
        MUH_FIS_SATIRI->base_record_id       = P_FIS_SATIRI->base_record_id;
        MUH_FIS_SATIRI->program_id           = P_FIS_SATIRI->program_id;
        MUH_FIS_SATIRI->modul_id             = P_FIS_SATIRI->modul_id;
        MUH_FIS_SATIRI->kaydedilecek_sirket     = P_FIS_SATIRI->kaydedilecek_sirket;

        MUH_FIS_SATIRI_EKLE ( MUH_FIS, MUH_FIS_SATIRI ,USE_DB);

        delete MUH_FIS;
        delete MUH_FIS_SATIRI;

    }

    if ( base_fis_satiri_eklenecek EQ true ) {

        toplam_hesaba_giren   = ROUND ( toplam_hesaba_giren   + P_FIS_SATIRI->hesaba_giren  );
        toplam_hesaptan_cikan = ROUND ( toplam_hesaptan_cikan + hesaptan_cikan );
        // toplam degerler guncelleniyor
        query.PREPARE_UPDATE (  "bnk_defter_fisler","fis_id","toplam_hesaba_giren, toplam_hesaptan_cikan ",
                                "fis_id = :fis_id" );

        query.SET_VALUE( ":toplam_hesaba_giren"   , toplam_hesaba_giren   );
        query.SET_VALUE( ":toplam_hesaptan_cikan" , toplam_hesaptan_cikan );
        query.SET_VALUE( ":fis_id"                , P_FIS_SATIRI->fis_id  );
        query.UPDATE   ();

        P_FIS->toplam_hesaba_giren   = toplam_hesaba_giren;
        P_FIS->toplam_hesaptan_cikan = toplam_hesaptan_cikan;
    }
    return satir_id;

}