예제 #1
0
void BNK_DEFTER_FISI_SIL( BNK_DEFTER_FIS_STRUCT * P_FIS, int p_fis_id )
{
    SQL_QUERY query ( DB );
    query.PREPARE_SELECT ( "bnk_defter_fisler","modul_id, program_id,base_fis_id ",
                           "fis_id = :fis_id" );
    query.SET_VALUE      ( ":fis_id" , p_fis_id );

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

    int         modul_id           =   query.VALUE ( 0 ).toInt();
    int         program_id         =   query.VALUE ( 1 ).toInt();
    int         base_fis_id        =   query.VALUE ( 2 ).toInt();

    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;
    }

    query.PREPARE_SELECT ( "bnk_defter_fis_satirlari","fis_satiri_id","fis_id = :fis_id" );
    query.SET_VALUE      ( ":fis_id", p_fis_id );

    // Fis'e ait satirlar siliniyor
    if ( query.SELECT() > 0 ) {
        while ( query.NEXT() EQ true ) {
            BNK_DEFTER_FIS_SATIRI_SIL ( P_FIS, query.VALUE ( 0 ).toInt() );
        }
    }

    query.PREPARE_DELETE ( "bnk_defter_fisler","fis_id = :fis_id" );
    query.SET_VALUE      ( ":fis_id", p_fis_id );
    query.DELETE();
}
예제 #2
0
int SMM_SIRADAKI_MAKBUZ_NO_AL(QString p_makbuz_tarihi, ADAK_SQL *P_DB)
{
    ADAK_SQL * USE_DB;

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

    SQL_QUERY query ( USE_DB );

    query.PREPARE_SELECT ( "smm_makbuzlar",
                           "makbuz_no",
                           "makbuz_tarihi = :makbuz_tarihi" );
    query.SET_VALUE    ( ":makbuz_tarihi", p_makbuz_tarihi );

    if ( query.SELECT( "makbuz_no DESC", 0, 1 ) EQ 0 ) {
        return 1;
    }

    query.NEXT();

    return query.VALUE(0).toInt() + 1;
}
예제 #3
0
void MUH_FIS_KOPYALAMA_BATCH::SEARCH_EDIT_CLICKED ( QWidget * widget, QLineEdit * lineEdit  )
{
    Q_UNUSED ( widget );

    int fis_id = OPEN_MUH_FIS_ARAMA ( 0, MUHASEBE_MODULU, -1, ENUM_MUHASEBE_FISI, this );

    if ( fis_id < 1 ) {
        return;
    }

    SQL_QUERY query ( DB );

    query.PREPARE_SELECT("muh_fisler" , "fis_no" , "fis_id = :fis_id");

    query.SET_VALUE      ( ":fis_id" , fis_id );
    if ( query.SELECT() EQ 0 ) {
        MSG_WARNING( tr ( "Fiş bulunamadı"), NULL );
        SET_FOCUS( m_ui->lineEdit_yeni_fis_no );
        return;
    }

    query.NEXT();
    lineEdit->setText ( query.VALUE(0).toString() );
    m_fis_id = fis_id;
}
예제 #4
0
QString GRP_KAYDIN_GRUPLARINI_BUL ( int program_id , int module_id ,int record_id ,
                                QList<int> * grup_idleri , QStringList * grup_adlari , QStringList * grup_kodlari)
{
    SQL_QUERY query    ( DB );

    query.PREPARE_SELECT ( "adak_kaydin_gruplari","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() EQ 0 ) {
        return "";
    }

    query.NEXT();

    QStringList grup_idleri_str = query.VALUE(0).toString().split("\t",QString::SkipEmptyParts);

    if (grup_idleri_str.size() EQ 0) {
        return "";
    }

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

    return GRP_GRUP_ADLARINI_BUL(grup_idleri , grup_adlari , grup_kodlari);
}
예제 #5
0
int MUH_HESAP_EKLEME_FISI::CHECK_FIS_FORM_VAR ( QObject * object )
{
    if ( object EQ m_ui->line_edit_hesap_kodu ) {
        QString tam_hesap_kodu = m_ui->line_edit_hesap_kodu->text();
        QRegExp non_digit ( " ( \\D+ )" );
        if ( m_ui->line_edit_hesap_kodu->text().contains(non_digit) EQ true ) {
            MSG_WARNING( tr ( "Hesap kodu sadece numerik karakterlerden oluşabilir" ), m_ui-> line_edit_hesap_kodu );

            m_ui->line_edit_hesap_kodu->undo();
            return ADAK_FAIL;
        }
        SQL_QUERY query ( DB );

        query.PREPARE_SELECT ( "muh_hesaplar","hesap_id","tam_hesap_kodu = :tam_hesap_kodu" );

        query.SET_VALUE      ( ":tam_hesap_kodu", tam_hesap_kodu );

        if (query.SELECT() > 0 ) {
            MSG_WARNING( tr ( "Aynı hesap koduyla kayıtlı başka bir muhasebe hesabı sistemde mevcuttur."
                                                     "Lütfen hesap kodunuzu değiştiriniz.." ), m_ui->line_edit_hesap_kodu );

            m_ui->line_edit_hesap_kodu->undo();
            return ADAK_FAIL;
        }
    }

    return ADAK_OK;
}
예제 #6
0
void SQL_INDEX_BATCH::READ_INDEXES()
{
    SQL_QUERY query (DB);

    query.PREPARE_SELECT("sql_tablolar","indexler_array","tablo_id=:tablo_id");
    query.SET_VALUE     (":tablo_id",p_tablo_id);

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

    query.NEXT();

    UNPACK_INT_ARRAY(query.VALUE(0).toString(),INDEXLER_ARRAY,INDEXLER_ARRAY_SIZE);

    int line_number = 1;
    for ( int i = 4; i < INDEXLER_ARRAY_SIZE; i++ ) {
        if ( INDEXLER_ARRAY[i] EQ 0 ) {
            if ( i+1 MOD 4 EQ 0 ) {
                line_number++;
            }
            continue;
        }
        COMBOBOX_ARRAY[line_number-1][i-(4*line_number)]->setCurrentIndex
                (COMBOBOX_ARRAY[line_number][i-(4*line_number)]->findText(GET_ALAN_ADI(p_tablo_id,INDEXLER_ARRAY[i])));

        if ( i+1 MOD 4 EQ 0 ) {
            line_number++;
        }
    }
}
예제 #7
0
bool HEADER_ICIN_INDEX_YAPISI_OLUSTUR (int index_sayisi, int tablo_id )
{
    int INDEXLER_ARRAY[INDEXLER_ARRAY_SIZE] = {0};

    SQL_QUERY query (DB);

    query.PREPARE_SELECT("sql_tablolar","indexler_array","tablo_id=:tablo_id");
    query.SET_VALUE     (":tablo_id",tablo_id);

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

    query.NEXT();

    UNPACK_INT_ARRAY(query.VALUE(0).toString(),INDEXLER_ARRAY,INDEXLER_ARRAY_SIZE);

    for (int i = 0; i < INDEXLER_ARRAY_SIZE; i += 4 ) {
        if ( INDEXLER_ARRAY[i] EQ 0 ) {
            continue;
        }
        if ( i EQ 0 ) {
            QString alan_adi = GET_ALAN_ADI( tablo_id, INDEXLER_ARRAY[i]);
            file_content += tab (4, "{ ");
            file_content += QString("PRIMARY , 1, {") + "\"" + alan_adi  + "\"" + "}";
            file_content += " }";
            index_sayisi--;
            if (index_sayisi > 0 ) {
                file_content += ",";
            }
            file_content += "\n";
        }
        else {
            int indexteki_kolon_sayisi = 0;
            for ( int j = i; j < i + 4; j++ ) {
                if ( INDEXLER_ARRAY[j] NE 0 ) {
                    indexteki_kolon_sayisi++;
                }
            }
            file_content += tab (4, "{ ");
            file_content += "INDEX , " + QVariant(indexteki_kolon_sayisi).toString() + ", { ";
            for (int j = 0; j < indexteki_kolon_sayisi; j++ ) {
                QString alan_adi = GET_ALAN_ADI( tablo_id, INDEXLER_ARRAY[i+j]);
                file_content += "\"" + alan_adi  + "\"" ;
                if (j NE indexteki_kolon_sayisi -1 ) {
                    file_content += ",";
                }

            }
            file_content += " } }";
            index_sayisi--;
            if (index_sayisi > 0 ) {
                file_content += ",";
            }
            file_content += "\n";
        }

    }
    return true;
}
예제 #8
0
QList<int> GRP_KAYDIN_GRUP_IDLERINI_BUL ( int program_id , int module_id ,int record_id )
{
    SQL_QUERY query    ( DB );

    query.PREPARE_SELECT ( "adak_kaydin_gruplari","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() EQ 0 ) {
        return QList<int>();
    }

    query.NEXT();

    QStringList grup_idleri_str = query.VALUE(0).toString().split("\t");

    if (grup_idleri_str.size() EQ 0) {
        return QList<int>();
    }

    QList<int> grup_idleri;

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

    return grup_idleri;
}
예제 #9
0
QString GRP_GRUP_ADLARINI_BUL ( QList<int> * grup_idleri , QStringList * grup_adlari , QStringList * grup_kodlari)
{
    SQL_QUERY query    ( DB );

    QString kaydin_gruplari;

    if (grup_idleri->size() EQ 0) {
        return "";
    }

    QString where_str = " ";

    for ( int i = 0 ; i < grup_idleri->size() ; i++ ) {
        if (i NE 0) {
            where_str.append(" OR");
        }
        where_str.append(QString(" grup_id=%1").arg(grup_idleri->at(i)));
    }

    query.PREPARE_SELECT("adak_gruplar","grup_adi,tam_grup_kodu",where_str,"");

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

    while(query.NEXT() EQ true) {
        if (grup_kodlari NE NULL) {
            *grup_kodlari   << query.VALUE(1).toString();
	}
        *grup_adlari    << query.VALUE(0).toString();
        kaydin_gruplari.append(QString(query.VALUE(0).toString() + "\n"));
    }

    return kaydin_gruplari;
}
예제 #10
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();
}
예제 #11
0
int STOK_HIZMET_KARTI_FORMU::CHECK_UPDATE ( int record_id )
{
    SQL_QUERY query ( DB );

    query.PREPARE_SELECT ( "stk_urunler ","urun_id, urun_kodu, barkod_numarasi",
                           "urun_kodu         = :urun_kodu_1       "
                           "OR    urun_kodu         = :urun_kodu_2       "
                           "OR    barkod_numarasi   = :barkod_numarasi_1 "
                           "OR    barkod_numarasi   = :barkod_numarasi_2 ");

    query.SET_VALUE ( ":urun_kodu_1",       m_ui->lineEdit_hizmet_kodu->text()       );
    query.SET_VALUE ( ":urun_kodu_2",       m_ui->lineEdit_barkod_no->text() );
    query.SET_VALUE ( ":barkod_numarasi_1", m_ui->lineEdit_hizmet_kodu->text()       );
    query.SET_VALUE ( ":barkod_numarasi_2", m_ui->lineEdit_barkod_no->text() );

    if ( query.SELECT() > 0 ) {
        while ( query.NEXT() EQ true ) {
            if ( query.VALUE(0).toInt() NE record_id ) {
                QString a = query.VALUE(1).toString();
                if ( a  EQ m_ui->lineEdit_hizmet_kodu->text() ) {
                    if ( m_ui->lineEdit_hizmet_kodu->text().isEmpty() EQ false ) {
                        MSG_WARNING(  tr("Bu hizmet kodu ile bir ürün veya hizmet var. Hizmet kodunu değiştiriniz."), m_ui->lineEdit_hizmet_kodu );

                        return ADAK_FAIL;
                    }
                }
                else if ( query.VALUE(2).toString() EQ m_ui->lineEdit_hizmet_kodu->text() ) {
                    if ( m_ui->lineEdit_hizmet_kodu->text().isEmpty() EQ false ) {
                        MSG_WARNING(  tr ( "Bu hizmet kodu ile başka bir ürün veya hizmet barkod numarası kayıtlı. Hizmet kodunu değiştiriniz." ), m_ui->lineEdit_hizmet_kodu );

                        return ADAK_FAIL;
                    }

                }
                else if ( query.VALUE(1).toString() EQ m_ui->lineEdit_barkod_no->text() ) {
                    if ( m_ui->lineEdit_barkod_no->text().isEmpty() EQ false ) {
                        MSG_WARNING(  tr ( "Bu barkod numarası ile başka bir hizmet veya ürün kodu kayıtlı. Barkod numarasını değiştiriniz." ), m_ui->lineEdit_barkod_no );

                        return ADAK_FAIL;
                    }
                }
                else {
                    if ( m_ui->lineEdit_barkod_no->text().isEmpty() EQ false ) {
                        MSG_WARNING(  tr ( "Bu barkod numarası başka bir hizmette veya üründe barkod numarası olarak kayıtlı. Barkod numarasını değiştiriniz." ), m_ui->lineEdit_barkod_no );

                        return ADAK_FAIL;
                    }
                }
            }
        }
    }

    return ADAK_OK;
}
예제 #12
0
QList<int> GRP_GRUBA_EKLI_KAYITLARI_BUL (int program_id, int module_id, QList<int> gruplar)
{
    if ( gruplar.size() EQ 0 ) {
        return QList<int>();
    }

    QList<int> alt_grup_idleri;

    GRP_GRUBUN_ALT_GRUPLARINI_BUL(gruplar,&alt_grup_idleri);

    gruplar = alt_grup_idleri;

    SQL_QUERY query    ( DB );
    QList<int>         record_ids;

    QString where_str = " (";

    for ( int i = 0 ; i < gruplar.size() ; i++ ) {
        if (i NE 0) {
            where_str.append(" OR");
        }

        //PostgreSQL de bytea de ilike olmadigindan cast etmemiz gerekli.
        if ( DB->GET_SQL_DRIVER_ENUM() EQ PSQL ) {
            where_str.append(QString(" convert_from(gruplar , 'UTF8') like '%\011%1\011%'").arg(gruplar.at(i)));
        }
        else if (DB->GET_SQL_DRIVER_ENUM() EQ ORACLE ) {
            //Oracle da ise db fonksiyonlari kullanilmali.
            where_str.append(QString("(dbms_lob.instr(gruplar, utl_raw.CAST_TO_RAW('%\t%1\t%')) > 0)").arg(gruplar.at(i)));
        }
        else {
            where_str.append(QString(" gruplar like '%\t%1\t%'").arg(gruplar.at(i)));
        }
    }
    where_str.append(QString(") AND (program_id=%1 AND module_id = %2)").arg(QVariant(program_id).toString())
                                                                        .arg(QVariant(module_id ).toString()));

    query.PREPARE_SELECT("adak_kaydin_gruplari","record_id",where_str,"");

    if ( query.SELECT() EQ 0 ) {
        return QList<int>();
    }

    while(query.NEXT() EQ true) {
        record_ids << query.VALUE(0).toInt();
    }

    return record_ids;
}
예제 #13
0
bool GRP_GRUP_EKLENDIMI(int program_id, int module_id)
{
    SQL_QUERY query ( DB );

    query.PREPARE_SELECT("adak_gruplar","grup_id","program_id = :program_id AND modul_id = :module_id ","");

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

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

    return true;
}
예제 #14
0
int MUH_HESAP_EKLEME_FISI::FIND_LAST_FIS_RECORD()
{
    SQL_QUERY query ( DB );

    query.PREPARE_SELECT ( "muh_hesaplar", "hesap_id","hesap_seviyesi = :hesap_seviyesi ");
    query.SET_VALUE      ( ":hesap_seviyesi" ,  m_ana_hesap_seviyesi );

    if ( query.SELECT("hesap_kodu DESC", 0, 1 ) EQ 0 ) {
        return 0;
    }

    query.NEXT();

    return query.VALUE(0).toInt();
}
예제 #15
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();
}
예제 #16
0
int MUH_HESAP_EKLEME_FISI::FIND_NEXT_FIS_RECORD()
{
    SQL_QUERY  query ( DB );

    QStringList alt_hesap_kodu_list = m_ui->line_edit_hesap_kodu->text().split( m_delimeter );

    query.PREPARE_SELECT ( "muh_hesaplar", "hesap_id","hesap_kodu > :hesap_kodu ");
    query.SET_VALUE      ( ":hesap_kodu"   , alt_hesap_kodu_list.at( alt_hesap_kodu_list.size() -1 ) );

    query.AND_EKLE       ( "hesap_seviyesi = :hesap_seviyesi");
    query.SET_VALUE      ( ":hesap_seviyesi", m_ana_hesap_seviyesi );

    if ( query.SELECT("hesap_kodu ASC", 0, 1 ) EQ 0 ) {
        return 0;
    }
    query.NEXT();

    return query.VALUE(0).toInt();
}
예제 #17
0
void BNK_MAKRO_SECIMI::FILL_TABLE()
{
    QTableWidget * table_widget = GET_TABLE_WIDGET();

    SQL_QUERY query ( DB );

    query.PREPARE_SELECT ( "bnk_makrolar","makro_id,makro_adi" );

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

    int current_row = 0;

    while ( query.NEXT () ) {
        current_row = ADD_NEW_ROW();

        table_widget->item ( current_row,0 )->setText ( query.VALUE ( "makro_id" ).toString() );
        table_widget->item ( current_row,1 )->setText ( query.VALUE ( "makro_adi" ).toString() );
    }
}
예제 #18
0
void DVZ_FILL_COMBOBOX ( QComboBox * combo_box, bool doviz_adi_ekle  )
{
    //DOVIZLER_STRUCT_DOLDUR();

    // FIXME : Bu yapi kod duplication yerine struct ile cozulebilir gibi duruyor ?

    SQL_QUERY query ( DB );

//    query.PREPARE_LIMIT_SELECT ( "SELECT kur_id FROM dvz_kurlar",0,1,"kur_id" );

//    if ( query.SELECT() EQ 0 ) {
//        DOVIZLERI_GUNCELLE();
//    }

    query.PREPARE_SELECT("dvz_dovizler" , "doviz_id,doviz_adi,doviz_kodu" , "dovizi_kullan = :dovizi_kullan");
    query.SET_VALUE(":dovizi_kullan" , 1);

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

    int added_item = 0;
    QStringList dovizler_list;
    while ( query.NEXT() EQ true ) {
        QString doviz_str = query.VALUE( 2 ).toString();
        if ( doviz_adi_ekle EQ true ) {
              doviz_str.append ( QString ( " %1" ).arg ( query.VALUE( 1 ).toString() ) );
        }
        dovizler_list << doviz_str;
        added_item++;
    }

    combo_box->addItems ( dovizler_list );
    combo_box->setEditable ( false );

    if ( added_item EQ 1 ) {
        combo_box->setCurrentIndex(0);
    }
}
예제 #19
0
int MUH_HESAP_EKLEME_FISI::CHECK_ADD_LINE ( int fis_id, int row_number )
{
    Q_UNUSED ( fis_id );
    Q_UNUSED ( row_number );

    SQL_QUERY query ( DB );

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

    query.SET_VALUE(":hesap_id" , m_ana_hesap_id );

    int alt_hesap_sayisi = 0;

    if ( query.SELECT() NE 0 ) {
        query.NEXT();
        alt_hesap_sayisi = query.VALUE(0).toInt();
    }
    if ( alt_hesap_sayisi EQ 0 ) {
        m_ana_hesap_aktarilmalimi = true;
    }

    return ADAK_OK;
}
int PRS_PUANTAJLARI_GOR_VE_DUZELT_FISI::GET_FIS_RECORD ( int record_id )
{

    SQL_QUERY  query    ( DB );
    SQL_QUERY  s_query  ( DB );

    QString bordro_bas_donemi = PRS_GET_BORDRO_DONEMI_BAS_STRING( m_bordro_yili, m_bordro_ayi );
    QString bordro_bts_donemi = PRS_GET_BORDRO_DONEMI_BTS_STRING( m_bordro_yili, m_bordro_ayi );

    // isten ayrilanlar

    query.PREPARE_SELECT("prs_personel_nufus_blgler, prs_personeller, prs_personel_kisisel_blgler " ,
                         "prs_personel_nufus_blgler.personel_id, "
                         "ucret_sekli,                  "
                         "net_ucret,                    "
                         "brut_ucret ,                  "
                         "ise_giris_tarihi,             "
                         "cari_hesap_id,                "
                         "ise_giris_tarihi,             "
                         "calisma_sekli,                "
                         "haftalik_calisilan_gun_sayisi,"
                         "isten_cikis_tarihi",

                         "prs_personel_nufus_blgler.personel_id         = prs_personeller.personel_id               "
                         "AND prs_personel_kisisel_blgler.personel_id   = prs_personeller.personel_id               "
                         "AND sube_id = :sube_id                              "
                         "AND ise_giris_tarihi   <= :ise_giris_tarihi         "
                         "AND isten_cikis_tarihi >= :isten_cikis_tarihi       " );
    query.SET_VALUE(":sube_id"            , m_sube_id);
    query.SET_VALUE(":ise_giris_tarihi"   , bordro_bts_donemi );
    query.SET_VALUE(":isten_cikis_tarihi" , bordro_bas_donemi );

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

    int current_row     = -1;
    int prs_doviz_id    =  0;

    while ( query.NEXT() NE 0 ) {

        int personel_id = query.VALUE("personel_id").toInt();


        int cari_hesap_id           = query.VALUE( "cari_hesap_id").toInt();
        QDate ise_giris_tarihi      = QDate::fromString( query.VALUE( "ise_giris_tarihi" ).toString(), "yyyy.MM.dd" );
        QString isten_cikis_tarihi  = query.VALUE( "isten_cikis_tarihi" ).toString();

        CARI_HESAP_STRUCT hesap_bilgileri;
        CARI_SET_HESAP_STRUCT_DEFAULTS(&hesap_bilgileri);

        CARI_KART_BILGILERINI_OKU( cari_hesap_id, &hesap_bilgileri  );

        current_row = ADD_NEW_LINE();

        QLineEdit * line_edit_adi_soyad       = ( QLineEdit * ) m_ui->table_widget_gun_satirlari->cellWidget(current_row ,ADI_COLUMN);

        line_edit_adi_soyad->setText( hesap_bilgileri.cari_hesap_ismi );

        int calisma_sekli                       = query.VALUE("calisma_sekli").toInt();

        prs_doviz_id                            = CARI_GET_PARA_BIRIM_ID( cari_hesap_id );

        int ucret_sekli_enum                    = query.VALUE( "ucret_sekli" ).toInt();
        double net_ucret                        = query.VALUE( "net_ucret"   ).toDouble();
        double brut_ucret                       = query.VALUE( "brut_ucret"  ).toDouble();
        double haftalik_calisilan_gun_sayisi    = query.VALUE( "haftalik_calisilan_gun_sayisi" ).toDouble();

        double prs_personel_ucret = net_ucret;
        if ( ucret_sekli_enum EQ PRS_BRUT ) {
            prs_personel_ucret    = brut_ucret;
        }

        QTableWidgetItem * new_item;

        new_item = new QTableWidgetItem(tr("%1").arg(personel_id));
        m_ui->table_widget_gun_satirlari->setItem(current_row ,ROW_ID_COLUMN ,new_item);

        new_item=new QTableWidgetItem(tr("%1").arg(record_id));
        m_ui->table_widget_gun_satirlari->setItem(current_row ,RECORD_ID_COLUMN ,new_item);

        QLineEdit * line_edit_calisma_sekli  = ( QLineEdit * ) m_ui->table_widget_gun_satirlari->cellWidget(current_row, CALISMA_SEKLI);
        line_edit_calisma_sekli->setText( QVariant ( calisma_sekli ).toString() );

        s_query.PREPARE_SELECT ("prs_puantaj","gun_sayisi ",
                                "personel_id = :personel_id  "
                                "AND bordro_donemi_yil    = :bordro_donemi_yil  "
                                "AND bordro_donemi_ay     = :bordro_donemi_ay   ");
        s_query.SET_VALUE (":personel_id"       ,  personel_id   );
        s_query.SET_VALUE (":bordro_donemi_yil" ,  m_bordro_yili );
        s_query.SET_VALUE (":bordro_donemi_ay"  ,  m_bordro_ayi );

        QCommaEdit * comma_edit_doviz_kuru              = ( QCommaEdit * ) m_ui->table_widget_gun_satirlari->cellWidget( current_row, KUR_COLUMN );
        QCommaEdit * comma_edit_aldigi_ucret            = ( QCommaEdit * ) m_ui->table_widget_gun_satirlari->cellWidget( current_row, ALDIGI_UCRET );
        QCommaEdit * comma_edit_ucret_tutari            = ( QCommaEdit * ) m_ui->table_widget_gun_satirlari->cellWidget( current_row, TEMEL_PARABIRIMI_UCRET );
        QCommaEdit * comma_edit_gun                     = ( QCommaEdit * ) m_ui->table_widget_gun_satirlari->cellWidget(current_row,CALISTIGI_GUN_COLUMN);
        QCommaEdit * comma_edit_ek_odenek               = ( QCommaEdit * ) m_ui->table_widget_gun_satirlari->cellWidget(current_row,EK_ODENEK_TUTARI);
        QCommaEdit * comma_edit_ek_kesinti              = ( QCommaEdit * ) m_ui->table_widget_gun_satirlari->cellWidget(current_row,EK_KESINTI_TUTARI);
        QCommaEdit * comma_edit_gunluk_ucret            = ( QCommaEdit * ) m_ui->table_widget_gun_satirlari->cellWidget(current_row,GUNLUK_UCRET   );
        QCommaEdit * comma_edit_yemek_verilen_gun_sayisi= ( QCommaEdit * ) m_ui->table_widget_gun_satirlari->cellWidget(current_row,YEMEK_VERILEN_GUN_SAYISI   );

        comma_edit_yemek_verilen_gun_sayisi->SET_DOUBLE( haftalik_calisilan_gun_sayisi * 4 );

        double eksik_gun_sayisi = PRS_GET_EKSIK_GUN_SAYISI( personel_id, m_bordro_ayi, m_bordro_yili );

        if ( eksik_gun_sayisi > 0.00 ) {

            if ( isten_cikis_tarihi NE "9999.99.99" ) {
                comma_edit_gun->SET_DOUBLE( QDate::fromString( isten_cikis_tarihi, "yyyy.MM.dd").daysInMonth() -  eksik_gun_sayisi );
            }
            else {
                comma_edit_gun->SET_DOUBLE( QDate::fromString( bordro_bts_donemi, "yyyy.MM.dd").daysInMonth() -  eksik_gun_sayisi );
            }
        }
        else {
            if ( isten_cikis_tarihi NE "9999.99.99" ) {
                QDate isten_cikis_date = QDate::fromString( isten_cikis_tarihi, "yyyy.MM.dd");
                comma_edit_gun->SET_DOUBLE( isten_cikis_date.day() );
            }
            else {
                comma_edit_gun->SET_DOUBLE( 30 );
            }
        }

        int gun_sayisi = comma_edit_gun->GET_DOUBLE();
        if ( ise_giris_tarihi.year() EQ m_bordro_yili )  {

            QDate bordro_tarihi;
            if ( ise_giris_tarihi.month() EQ m_bordro_ayi ) {
                int ise_giris_gunu = ise_giris_tarihi.day();

                bordro_tarihi = QDate::fromString( bordro_bts_donemi, "yyyy.MM.dd" );

                if ( isten_cikis_tarihi NE "9999.99.99" ) {
                    bordro_tarihi = QDate::fromString( isten_cikis_tarihi, "yyyy.MM.dd" );
                    gun_sayisi = bordro_tarihi.day();
                }
                else {
                    gun_sayisi = bordro_tarihi.daysInMonth();
                }

                gun_sayisi = gun_sayisi - ise_giris_gunu + 1 ;

                comma_edit_gun->SET_INTEGER( gun_sayisi );
            }

            comma_edit_yemek_verilen_gun_sayisi->SET_DOUBLE( haftalik_calisilan_gun_sayisi * floor( comma_edit_gun->GET_DOUBLE() / 7.0 ) );
        }

        // GUNLUK UCRET PUANTAJ'DA GUN DEGISTIRILIRSE OTOMATIK CARPILACAK
        comma_edit_gunluk_ucret->SET_DOUBLE( ROUND( prs_personel_ucret / 30 ));
        if ( calisma_sekli EQ ENUM_GUNLUK ) {
            comma_edit_gunluk_ucret->SET_DOUBLE( prs_personel_ucret );
        }
        if ( calisma_sekli EQ ENUM_AYLIK and gun_sayisi > 30 ) {
            comma_edit_gun->SET_DOUBLE( 30 );
        }

        if ( calisma_sekli EQ ENUM_GUNLUK ) {
            prs_personel_ucret = ROUND( comma_edit_gun->GET_DOUBLE() * comma_edit_gunluk_ucret->GET_DOUBLE() );
        }

        if ( prs_doviz_id NE DVZ_GET_TEMEL_PARA_BIRIMI_ID() ) {
            comma_edit_doviz_kuru->setEnabled( true );
        }

        // personel ek odenek bilgileri sorgulaniyor.

        double toplam_ek_odenek  = 0.00;
        double toplam_ek_kesinti = 0.00;

        SQL_QUERY t_query( DB );

        t_query.PREPARE_SELECT( "prs_ek_kesintiler_odenekler",
                                "yuzde_mi, yuzde_orani, tutar, kesinti_odenek_turu ",
                                "personel_id         = :personel_id       AND "
                                "bordro_donemi_yil   = :bordro_donemi_yil AND "
                                "bordro_donemi_ay    = :bordro_donemi_ay      ");

        t_query.SET_VALUE( ":personel_id"           , personel_id       );
        t_query.SET_VALUE( ":bordro_donemi_yil"     , m_bordro_yili     );
        t_query.SET_VALUE( ":bordro_donemi_ay "     , m_bordro_ayi      );

        if ( t_query.SELECT() NE 0 ) {
            while ( t_query.NEXT() EQ true ) {
                int     yuzde_mi            = t_query.VALUE( "yuzde_mi" ).toInt();
                int     kesinti_odenek_turu = t_query.VALUE( "kesinti_odenek_turu" ).toInt();
                double  yuzde_orani         = t_query.VALUE( "yuzde_orani" ).toDouble();
                double  tutar               = t_query.VALUE( "tutar" ).toDouble();

                if ( yuzde_mi EQ 1 ) {
                    if ( kesinti_odenek_turu EQ ENUM_PRS_ODENEK ) {
                        toplam_ek_odenek    += ROUND( prs_personel_ucret * yuzde_orani );
                    }
                    if ( kesinti_odenek_turu EQ ENUM_PRS_KESINTI ) {
                        toplam_ek_kesinti  += ROUND( prs_personel_ucret * yuzde_orani );
                    }
                }
                else {
                    if ( kesinti_odenek_turu EQ ENUM_PRS_ODENEK ) {
                        toplam_ek_odenek    += tutar;
                    }
                    if ( kesinti_odenek_turu EQ ENUM_PRS_KESINTI ) {
                        toplam_ek_kesinti  += tutar;
                    }
                }
            }
        }

        comma_edit_aldigi_ucret->SET_DOUBLE ( prs_personel_ucret );
        comma_edit_ek_odenek->SET_DOUBLE    ( toplam_ek_odenek   );
        comma_edit_ek_kesinti->SET_DOUBLE   ( toplam_ek_kesinti  );
        comma_edit_doviz_kuru->SET_DOUBLE   ( DVZ_DOVIZ_KURUNU_AL( prs_doviz_id, QDate::currentDate(), ENUM_SATIS ) );
        comma_edit_ucret_tutari->SET_DOUBLE ( ROUND( comma_edit_doviz_kuru->GET_DOUBLE() * prs_personel_ucret ) );

        if ( s_query.SELECT() EQ 0 ) {
            DB->START_TRANSACTION();
            QCommaEdit * comma_edit_kur   =  ( QCommaEdit * ) m_ui->table_widget_gun_satirlari->cellWidget(current_row ,KUR_COLUMN);
            SQL_QUERY insert_query(DB);
            insert_query.PREPARE_INSERT("prs_puantaj", "puantaj_id" ,
                                        "personel_id , gun_sayisi ,doviz_kuru,  "
                                        "temel_para_birim_tutari , bordro_donemi_yil, bordro_donemi_ay, yemek_verilen_gun_sayisi ");

            insert_query.SET_VALUE(":personel_id"               , personel_id);
            insert_query.SET_VALUE(":gun_sayisi"                , comma_edit_gun->GET_DOUBLE());
            insert_query.SET_VALUE(":doviz_kuru"                , comma_edit_kur->GET_DOUBLE());
            insert_query.SET_VALUE(":temel_para_birim_tutari"   , comma_edit_ucret_tutari->GET_DOUBLE() );
            insert_query.SET_VALUE(":bordro_donemi_yil"         , m_bordro_yili );
            insert_query.SET_VALUE(":bordro_donemi_ay"          , m_bordro_ayi );
            insert_query.SET_VALUE(":yemek_verilen_gun_sayisi"  , comma_edit_yemek_verilen_gun_sayisi->GET_DOUBLE() );

            insert_query.INSERT();
            DB->COMMIT_TRANSACTION();
        }

    }
    return ADAK_OK;
}
예제 #21
0
void CHECK_VERSION_UPGRADES (QString program_version_column_name , QString program_version_db_name, void UPGRADE_TO_VERSION_FUNC(QString) )
{
    SQL_QUERY query      ( DB );

    query.PREPARE_SELECT(program_version_db_name,program_version_column_name);

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

    double program_version_in_db = query.VALUE(0).toDouble();
    double new_program_version   = ADAK_PROGRAM_VERSION(ADAK_VERITABANI_ID()).toDouble();

    if (program_version_in_db EQ new_program_version) {
        return;
    }

    if ( program_version_in_db > new_program_version ) {
        ADAK_ERROR(QObject::tr("Version of this program is smaller than the version of the database. Update the program, otherwise the data will be corrupted."),NULL,NULL);
        exit(77);//Bu programın versiyonu , veritabanının versiyonundan daha küçük. Programı güncelleyin , aksi taktirde verileriniz bozulur.
    }

    VERITABANLARINI_GUNCELLE();

//    QSplashScreen * splash = CREATE_SPLASH_SCREEN();
//    splash->show();
//    splash->showMessage((QString(QObject::tr("Upgrading Programme. Please wait..."))), Qt::AlignCenter, Qt::white );//Programınızın versiyonu yükseltiliyor. Lütfen Bekleyiniz...

    double current_program_version = program_version_in_db;

    DB->START_TRANSACTION();

    while ( current_program_version < new_program_version ) {        

        QString version = QVariant(current_program_version).toString();

        QStringList info = version.split(".",QString::SkipEmptyParts,Qt::CaseInsensitive);

        version.clear();

        if (info.size() NE 2) {
            version.append(info.at(0) + ".00");
        }
        else {
            if (info.at(1).size() NE 2) {
                version.append(info.at(0) + "." + info.at(1) + "0");
            }
            else {
                version.append(info.at(0) + "." + info.at(1));
            }
        }

        UPGRADE_TO_VERSION_FUNC(version);
        current_program_version = ROUND (current_program_version + 0.01);
    }

    query.PREPARE_UPDATE (program_version_db_name , "" , program_version_column_name , "");
    query.SET_VALUE ( QString(":%1").arg(program_version_column_name) , ADAK_PROGRAM_VERSION(ADAK_VERITABANI_ID()).toDouble());

    query.UPDATE();

//    splash->finish(NULL);

//    ADAK_WARNING(QObject::tr("Version of programme is upgrade.\n")+
//                QObject::tr("Please check User Authority for new properties. \n")+
//                QObject::tr("You can set User Authorization in the User's Screen.\n\n")+
//                QObject::tr("You can use Management Actions -> E9 repair for resolving some errors.")
//                ,NULL,NULL);

    DB->COMMIT_TRANSACTION();
}
void DMR_AMORTISMAN_AYIRMA_BATCH::RUN_BATCH()
{
    SQL_QUERY query ( DB ) ;

    QList<int> gruplara_kayitli_demirbaslar_id_list;

    gruplara_kayitli_demirbaslar_id_list = GRP_GRUBA_EKLI_KAYITLARI_BUL(E9_PROGRAMI,DEMIRBAS_GRUP_MODULU,m_grup_idleri);

    QString where_str;

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

        where_str = "demirbas_id = :demirbas_id ";

        if (m_sube_id > 0) {
            where_str.append(" AND sube_id = :sube_id");
        }
        where_str.append(" AND amortisman_ayrilacak_mi = :amortisman_ayrilacak_mi");

        query.PREPARE_SELECT ( "dmr_demirbaslar","demirbas_id,yeniden_degerleme_yapilacak_mi,"
                               "yeniden_degerleme_yapildi, alis_tarihi , yillik_ayrilan_amor_yuzdesi",
                                where_str);
        query.SET_VALUE      ( ":demirbas_id" , QVariant ( gruplara_kayitli_demirbaslar_id_list.at(i)).toInt() );

        if ( m_sube_id > 0) {
            query.SET_VALUE(":sube_id" , m_sube_id);
        }
        query.SET_VALUE(":amortisman_ayrilacak_mi" , 1);

        if ( query.SELECT() EQ 0 ) {
            continue;
        }

        while ( query.NEXT() ) {
            int yeniden_degerleme_yapilacak_mi = query.VALUE(1).toInt();
            int yeniden_degerleme_yapildi      = query.VALUE(2).toInt();
            QDate demirbas_alis_tarihi         = QDate::fromString(query.VALUE(3).toString(),"yyyy.MM.dd");

            if ( demirbas_alis_tarihi.year() EQ m_ui->adakDate_fis_tarihi->QDATE().year() ) {
                if ( demirbas_alis_tarihi.month() > m_ui->adakDate_fis_tarihi->QDATE().month()) {
                    gruplara_kayitli_demirbaslar_id_list.removeAt(i);
                    continue;
                }

                double ayrilacak_amor_orani = DMR_GET_AYRILACAK_AMORTISMAN_ORANI(demirbas_alis_tarihi.month());

                if ( ayrilacak_amor_orani NE m_ui->commaEdit_dusulecek_amortisman_yuzdesi->GET_DOUBLE()) {
                    gruplara_kayitli_demirbaslar_id_list.removeAt(i);
                    continue;
                }
            }

            if ( yeniden_degerleme_yapilacak_mi EQ 1 ) {
                if ( yeniden_degerleme_yapildi EQ 0 ) {
                    //Demirbasin alis tarihine bakilir.Islem yili ile demirbas ayni yil alinmissa,
                    //demirbas yeniden degerlemeye tabi degildir


                    int demirbas_alim_yili = demirbas_alis_tarihi.year();
                    int current_year       = m_ui->adakDate_fis_tarihi->QDATE().year();

                    if ( demirbas_alim_yili NE current_year ) {
                        gruplara_kayitli_demirbaslar_id_list.removeAt(i);
                        continue;
                    }
                }
            }

            double yillik_ayrilan_amortisman_yuzdesi = query.VALUE("yillik_ayrilan_amor_yuzdesi").toDouble();

            if ( yillik_ayrilan_amortisman_yuzdesi EQ 100 ) {
                //Demirbasin yillik amortismani ayrilmis demektir
                gruplara_kayitli_demirbaslar_id_list.removeAt(i);
                continue;
            }

            yillik_ayrilan_amortisman_yuzdesi += m_ui->commaEdit_dusulecek_amortisman_yuzdesi->GET_DOUBLE();

            if ( yillik_ayrilan_amortisman_yuzdesi > 100 ) {
                gruplara_kayitli_demirbaslar_id_list.removeAt(i);
                continue;
            }


        }

    }

    if ( gruplara_kayitli_demirbaslar_id_list.size() EQ 0 ) {
        m_ui->textEdit_aciklama->setHidden ( false );
        m_ui->textEdit_aciklama->setPlainText ( "Gruba Kayıtlı,Amortismanı Ayrılacak Demirbaş Bulunmamaktadır.Amortisman Ayırma İşlemi Gerçekleşmedi!..");

        return;
    }

    DB->START_TRANSACTION();

    DMR_FIS_STRUCT * DMR_FISI = new DMR_FIS_STRUCT;

    DMR_CLEAR_FIS_STRUCT(DMR_FISI);

    DMR_FISI->program_id             = E9_PROGRAMI;
    DMR_FISI->modul_id               = DEMIRBAS_MODULU;
    DMR_FISI->fis_tarihi             = m_ui->adakDate_fis_tarihi->DATE();
    DMR_FISI->aciklama               = QObject::tr("Toplu Amortisman Ayırma Fişi" );
    DMR_FISI->fis_turu               = AMORTISMAN_AYIRMA_FISI;
    DMR_FISI->dusulecek_amor_yuzdesi = m_ui->commaEdit_dusulecek_amortisman_yuzdesi->GET_DOUBLE();

    int fis_id = DMR_FIS_EKLE(DMR_FISI);


    DMR_FIS_SATIRI_STRUCT * DMR_FIS_SATIRI = new DMR_FIS_SATIRI_STRUCT;



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

        int demirbas_id = QVariant(gruplara_kayitli_demirbaslar_id_list.at(i)).toInt();

        DMR_CLEAR_FIS_SATIRI_STRUCT(DMR_FIS_SATIRI);

        DMR_FIS_SATIRI->demirbas_id        = demirbas_id;
        DMR_FIS_SATIRI->satir_tutari       = 0.0;
        //Ayrilacak amortisman tutari fonksiyonda hesaplanacak
        DMR_FIS_SATIRI->fis_id             = fis_id;
        DMR_FIS_SATIRI->modul_id           = DMR_FISI->modul_id;
        DMR_FIS_SATIRI->program_id         = DMR_FISI->program_id;

        DMR_FIS_SATIRI_EKLE(DMR_FISI , DMR_FIS_SATIRI);

    }


    m_ui->textEdit_aciklama->setHidden ( false );

    query.PREPARE_SELECT ( "dmr_fis_satirlari","fis_satiri_id","fis_id = :fis_id" );
    query.SET_VALUE      ( ":fis_id" , fis_id );

    if ( query.SELECT() EQ 0 ) {
        //Olusturulan amortisman fisinin hic satiri yoksa,fisin kendiside silinmeli

        query.PREPARE_DELETE ( "dmr_fisler","fis_id = :fis_id" );
        query.SET_VALUE      ( ":fis_id" , fis_id );
        query.DELETE();

        m_ui->textEdit_aciklama->setPlainText ( "Ayrılacak amortisman yüzdesine uygun demirbaş,seçilen grupta bulunamadı.Fiş oluşturulamadı!..");
    }
    else {
        m_ui->textEdit_aciklama->setPlainText ( QString ( "'%1' nolu Amortisman Fişi Oluşturuldu." ).arg ( QVariant(DMR_FISI->fis_no).toString()));
    }



    QString log_detaylari = QObject::tr ( "Toplu Amortisman Ayırma , " );
    log_detaylari.append ( "Gruplar : " + m_ui->textEdit_gruplar->toPlainText() + "  " + "\n");
    log_detaylari.append ( "Düşülecek Amortisman Yüzdesi : % "  +
                         m_ui->commaEdit_dusulecek_amortisman_yuzdesi->GET_TEXT() );

    E9_LOG_KAYDI_EKLE ( DEMIRBAS_MODULU,LOG_DMR_AMORTISMAN_AYIRMA,LOG_ISLEM_ADD,log_detaylari );


    DB->COMMIT_TRANSACTION();


}
예제 #23
0
int PRS_PERSONEL_AILE_FISI::GET_FIS_RECORD ( int record_id )
{
    SQL_QUERY   sql_query_personel (DB);
    SQL_QUERY   query              (DB);


    int cari_hesap_id =  0 ;
    sql_query_personel.PREPARE_SELECT( "prs_personeller ","sicil_no, cari_hesap_id","personel_id = :personel_id" );

    sql_query_personel.SET_VALUE(":personel_id", record_id);

    if ( sql_query_personel.SELECT() NE 0 ) {

        sql_query_personel.NEXT();

        line_edit_personel_sicil_no->setText ( sql_query_personel.VALUE(0).toString() );
        cari_hesap_id     =   sql_query_personel.VALUE( 1 ).toInt();
    }

    CARI_HESAP_STRUCT hesap_bilgileri;
    CARI_SET_HESAP_STRUCT_DEFAULTS(&hesap_bilgileri);

    CARI_KART_BILGILERINI_OKU( cari_hesap_id, &hesap_bilgileri  );

    line_edit_personel_adi->setText         ( hesap_bilgileri.cari_hesap_ismi);

    query.PREPARE_SELECT ( "prs_personel_aile_uyeleri ",
                           "aile_bilgi_id , personel_id, order_number, aciklama, "
                           "adi_soyadi,  tc_kimlik_no,akrabalik_derecesi,dogum_tarihi, "
                           "ogrenim_durumu, calisma_durumu,"
                           "cinsiyet, asgari_gecim_ind_durumu ",
                           "personel_id = :personel_id ");

    query.SET_VALUE      ( ":personel_id",  record_id );

    if ( query.SELECT("order_number ASC" ) NE 0 ) {

        while ( query.NEXT() EQ true ) {

            int p_current_row;

            p_current_row = ADD_NEW_LINE ();

            QWidget    *   cell_widget = table_widget_aile_satirlari->cellWidget( p_current_row, AD_SOYAD_COLUMN );
            QLineEdit  *   line_edit_ad_soyad    = static_cast < QLineEdit * > ( cell_widget );
            line_edit_ad_soyad->setText( query.VALUE("adi_soyadi").toString() );

            cell_widget = table_widget_aile_satirlari->cellWidget( p_current_row, TC_KIMLIK_NO_COLUMN );
            QLineEdit  *   line_edit_tc_kimlik_no    = static_cast < QLineEdit * > ( cell_widget );
            line_edit_tc_kimlik_no->setText( query.VALUE("tc_kimlik_no").toString() );

            cell_widget = table_widget_aile_satirlari->cellWidget( p_current_row, AKRABALIK_DERECESI_COLUMN );
            QComboBox  *   combo_box_akrabalik_derecesi    = static_cast < QComboBox * > ( cell_widget );

            FIND_AND_SET_COMBOBOX_TEXT(combo_box_akrabalik_derecesi ,
                                       PRS_GET_AKRABALIK_DERECESI_STRING(query.VALUE("akrabalik_derecesi").toInt()));

            cell_widget = table_widget_aile_satirlari->cellWidget( p_current_row, CALISMA_DURUMU_COLUMN );
            QComboBox  *   combo_box_calisma_durumu    = static_cast < QComboBox * > ( cell_widget );

            FIND_AND_SET_COMBOBOX_TEXT(combo_box_calisma_durumu , PRS_GET_CALISMA_DURUMU_STRING(query.VALUE("calisma_durumu").toInt()));

            cell_widget = table_widget_aile_satirlari->cellWidget( p_current_row, DOGUM_TARIHI_COLUMN);
            QAdakDate * adakDate_dogum_tarihi = static_cast<QAdakDate*> (cell_widget);
            adakDate_dogum_tarihi->SET_DATE( query.VALUE("dogum_tarihi").toString());

            cell_widget = table_widget_aile_satirlari->cellWidget( p_current_row, EGITIM_DURUMU_COLUMN );
            QComboBox  *   combo_box_egitim_durumu    = static_cast < QComboBox * > ( cell_widget );

            FIND_AND_SET_COMBOBOX_TEXT(combo_box_egitim_durumu , query.VALUE("ogrenim_durumu").toString());

            cell_widget = table_widget_aile_satirlari->cellWidget( p_current_row, CINSIYET_COLUMN );
            QComboBox  *   combo_box_cinsiyet    = static_cast < QComboBox * > ( cell_widget );

            FIND_AND_SET_COMBOBOX_TEXT(combo_box_cinsiyet , query.VALUE("cinsiyet").toString());

            cell_widget = table_widget_aile_satirlari->cellWidget( p_current_row, ACIKLAMA_COLUMN );
            QLineEdit  *   line_edit_aciklama    = static_cast < QLineEdit * > ( cell_widget );
            line_edit_aciklama->setText( query.VALUE("aciklama").toString() );

            cell_widget = table_widget_aile_satirlari->cellWidget( p_current_row, ASGARI_GECIM_IND_DURUMU_COLUMN );
            QComboBox  *   combo_box_asagari_gecim_ind_durumu  = static_cast < QComboBox * > ( cell_widget );

            int asgari_gecim_ind_durumu = query.VALUE( "asgari_gecim_ind_durumu" ).toInt();

            FIND_AND_SET_COMBOBOX_TEXT( combo_box_asagari_gecim_ind_durumu , PRS_GET_EVET_HAYIR_DURUMU_STRING(asgari_gecim_ind_durumu));


            QString id                      = query.VALUE("aile_bilgi_id").toString();
            QString personel_id             = query.VALUE("personel_id").toString();
            QString order_number            = query.VALUE("order_number").toString();


            QTableWidgetItem * new_item;

            table_widget_aile_satirlari->setHorizontalHeaderLabels(QStringList()<<"id"<<"record_id"<<"satir_order"
                                                                    <<tr("Ad Soyad")<<tr("TC Kimlik No")<<tr("Akrabalık Derecesi")<<("Çalışma Durumu")
                                                                    <<tr("Doğum Tarihi")<<tr("Eğitim Düzeyi")
                                                                    <<tr("Cinsiyet")<< tr("Asgari Geçim \n İndirimi") << tr("Açıklama")<<tr("")<<tr("") );

            new_item = new QTableWidgetItem(tr("%1").arg(id));
            table_widget_aile_satirlari->setItem(p_current_row, ROW_ID_COLUMN, new_item);

            new_item = new QTableWidgetItem(tr("%1").arg(personel_id));
            table_widget_aile_satirlari->setItem(p_current_row, RECORD_ID_COLUMN, new_item);

            new_item = new QTableWidgetItem(tr("%1").arg(order_number));
            table_widget_aile_satirlari->setItem(p_current_row, ORDER_COLUMN, new_item);

        }
    }
    return ADAK_OK;
}
예제 #24
0
void GRP_GRUBUN_ALT_GRUPLARINI_BUL ( QList<int> gruplar, QList<int> * alt_grup_idleri )
{
    if (gruplar.isEmpty() EQ true) {
        return;
    }

    QString where_str = "";

    for ( int i = 0 ; i < gruplar.size() ; i++) {
        if ( i NE 0 ) {
            where_str.append("OR ");
        }
        where_str.append(QString("grup_id = %1 ").arg(gruplar.at(i)));
    }

    SQL_QUERY query (DB);

    query.PREPARE_SELECT("adak_gruplar","grup_id , grup_adi , alt_grup_sayisi",where_str,"");

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

    QList<int> parent_gruplar;

    while ( query.NEXT() EQ true ) {
        if (query.VALUE(2).toInt() EQ 0) {
            if ( alt_grup_idleri->contains(query.VALUE(0).toInt()) EQ false ) {
                *alt_grup_idleri << query.VALUE(0).toInt();
            }
            continue;
        }
        parent_gruplar << query.VALUE(0).toInt();
    }

    if (parent_gruplar.isEmpty() EQ true) {
        return;
    }

    where_str = "";

    for ( int i = 0 ; i < parent_gruplar.size() ; i++) {
        if ( i NE 0 ) {
            where_str.append("OR ");
        }
        where_str.append(QString("grup_parent_id = %1 ").arg(parent_gruplar.at(i)));
    }

    query.PREPARE_SELECT("adak_gruplar","grup_id , grup_adi , alt_grup_sayisi",where_str,"");

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

    gruplar.clear();

    while ( query.NEXT() EQ true ) {
        gruplar << query.VALUE(0).toInt();
    }

    GRP_GRUBUN_ALT_GRUPLARINI_BUL(gruplar,alt_grup_idleri);
}
예제 #25
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();;
    }
}
예제 #26
0
int PRS_PERSONEL_ODENEK_EKLEME_FISI::GET_FIS_RECORD ( int record_id )
{
    SQL_QUERY   sql_query(DB);
    SQL_QUERY   query    (DB);

    sql_query.PREPARE_SELECT( "prs_personeller ",
                              "sicil_no, cari_hesap_id",
                              "personel_id = :personel_id" );
    sql_query.SET_VALUE( ":personel_id", record_id );

    if ( sql_query.SELECT() EQ 0 ) {
        return ADAK_FAIL;
    }

    sql_query.NEXT();

    line_edit_personel_sicil_no->setText ( sql_query.VALUE(0).toString() );

    int cari_hesap_id   = sql_query.VALUE( 1 ).toInt();

    CARI_HESAP_STRUCT hesap_bilgileri;
    CARI_SET_HESAP_STRUCT_DEFAULTS(&hesap_bilgileri);

    CARI_KART_BILGILERINI_OKU( cari_hesap_id, &hesap_bilgileri  );

    line_edit_personel_adi_soyadi->setText( hesap_bilgileri.cari_hesap_ismi );


    query.PREPARE_SELECT ( "prs_ek_kesintiler_odenekler",
                           "kesinti_odenek_id, personel_id, order_number,  "
                           "odenek_kesinti_adi, bordro_donemi_ay, bordro_donemi_yil, ssk_kesintisi_iceriyor_mu, "
                           "gelir_vergisi_iceriyor_mu, damga_vergisi_iceriyor_mu, "
                           "yuzde_mi, yuzde_orani, tutar, aciklama, bordro_id ",
                           "personel_id = :personel_id "
                           "AND kesinti_odenek_turu = :kesinti_odenek_turu ");


    query.SET_VALUE      ( ":personel_id",          record_id );
    query.SET_VALUE      ( ":kesinti_odenek_turu"  , ENUM_PRS_ODENEK);

    query.SELECT("order_number ASC" );

    while ( query.NEXT() EQ true ) {

        int p_current_row;

        p_current_row = ADD_NEW_LINE ();

        QWidget     *  cell_widget = table_widget_odenek_satirlari->cellWidget( p_current_row, BORDRO_DONEMI_AY_COLUMN );
        QLineEdit   *   line_edit_odenek_adi                        = ( QLineEdit  * ) table_widget_odenek_satirlari->cellWidget( p_current_row, ODENEK_ADI_COLUMN );
        QComboBox   *   combo_box_bordro_donemi_ay                  = ( QComboBox  * ) table_widget_odenek_satirlari->cellWidget( p_current_row, BORDRO_DONEMI_AY_COLUMN );
        QComboBox   *   combo_box_bordro_donemi_yil                 = ( QComboBox  * ) table_widget_odenek_satirlari->cellWidget( p_current_row, BORDRO_DONEMI_YIL_COLUMN );
        QCheckBox   *   check_box_odenek_ssk_kesintisi_iceriyor_mu  = ( QCheckBox  * ) table_widget_odenek_satirlari->cellWidget( p_current_row, ODENEK_SSK_KESINTISI_ICERIYOR_MU_COLUMN );
        QCheckBox   *   check_box_odenek_gelir_vergisi_iceriyor_mu  = ( QCheckBox  * ) table_widget_odenek_satirlari->cellWidget( p_current_row, ODENEK_GELIR_VERGISI_ICERIYOR_MU_COLUMN );
        QCheckBox   *   check_box_odenek_damga_vergisi_iceriyor_mu  = ( QCheckBox  * ) table_widget_odenek_satirlari->cellWidget( p_current_row, ODENEK_DAMGA_VERGISI_ICERIYOR_MU_COLUMN );
        QComboBox   *   combo_box_odenek_yuzde_mi                   = ( QComboBox  * ) table_widget_odenek_satirlari->cellWidget( p_current_row, ODENEK_YUZDE_MI_COLUMN );
        QCommaEdit  *   comma_edit_yuzde_orani                      = ( QCommaEdit * ) table_widget_odenek_satirlari->cellWidget( p_current_row, YUZDE_COLUMN );
        QCommaEdit  *   comma_edit_tutar                            = ( QCommaEdit * ) table_widget_odenek_satirlari->cellWidget( p_current_row, TUTAR_COLUMN );

        line_edit_odenek_adi->setText( query.VALUE("odenek_kesinti_adi").toString() );
        combo_box_bordro_donemi_ay->setCurrentIndex( query.VALUE("bordro_donemi_ay").toInt() );
        combo_box_bordro_donemi_yil->setCurrentIndex( combo_box_bordro_donemi_yil->findText( query.VALUE("bordro_donemi_yil").toString()) );
        check_box_odenek_ssk_kesintisi_iceriyor_mu->setChecked( query.VALUE("ssk_kesintisi_iceriyor_mu").toInt() );
        check_box_odenek_gelir_vergisi_iceriyor_mu->setChecked( query.VALUE("gelir_vergisi_iceriyor_mu").toInt() );
        check_box_odenek_damga_vergisi_iceriyor_mu->setChecked( query.VALUE("damga_vergisi_iceriyor_mu").toInt() );
        combo_box_odenek_yuzde_mi->setCurrentIndex( query.VALUE("yuzde_mi").toInt() );
        comma_edit_yuzde_orani->SET_DOUBLE ( query.VALUE("yuzde_orani").toDouble() );
        comma_edit_tutar->SET_DOUBLE ( query.VALUE("tutar").toDouble() );

        if ( combo_box_odenek_yuzde_mi->currentText() EQ tr("TUTAR") ) {
            comma_edit_tutar->setEnabled( true );
        }
        else {
            comma_edit_yuzde_orani->setEnabled( true );
        }

        cell_widget = table_widget_odenek_satirlari->cellWidget( p_current_row, ACIKLAMA_COLUMN );
        QLineEdit  *   line_edit_aciklama    = static_cast < QLineEdit * > ( cell_widget );
        line_edit_aciklama->setText( query.VALUE("aciklama").toString() );


        QString id                                  = query.VALUE("kesinti_odenek_id").toString();
        QString personel_id                         = query.VALUE("personel_id").toString();
        QString order_number                        = query.VALUE("order_number").toString();

        QTableWidgetItem * new_item;

        new_item = new QTableWidgetItem(tr("%1").arg(id));
        table_widget_odenek_satirlari->setItem(p_current_row, ROW_ID_COLUMN, new_item);

        new_item = new QTableWidgetItem(tr("%1").arg(personel_id));
        table_widget_odenek_satirlari->setItem(p_current_row, RECORD_ID_COLUMN, new_item);

        new_item = new QTableWidgetItem(tr("%1").arg(order_number));
        table_widget_odenek_satirlari->setItem(p_current_row, ORDER_COLUMN, new_item);

    }
    return ADAK_OK;
}
예제 #27
0
int MUH_CHECK_MUHASEBE_ALARMLARI ( QString tam_hesap_kodu,double eklenecek_borc,double eklenecek_alacak )
{
    if ( K9_MUHASEBE_ALARMLARI_KAPALIMI() EQ true ) {
        return ADAK_OK;
    }

    if ( tam_hesap_kodu.isEmpty() EQ true ) {
        return ADAK_FAIL;
    }

    SQL_QUERY query (DB);

    query.PREPARE_SELECT("muh_hesaplar" , "tali_hesap , hesap_ismi , hesap_id, toplam_borc_array , toplam_alacak_array, "
                         "ent_borc_array , ent_alacak_array , ent_olmayan_borc_array,"
                         "ent_olmayan_alacak_array" , "tam_hesap_kodu = :tam_hesap_kodu");

    query.SET_VALUE(":tam_hesap_kodu" , tam_hesap_kodu );

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

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

    if ( tali_hesap_mi EQ 0 ) {
        return ADAK_FAIL;
    }

    double * HESABIN_BORC_BAKIYESI   = new double [ K9_ARRAY_SIZE ];
    double * HESABIN_ALACAK_BAKIYESI = new double [ K9_ARRAY_SIZE ];

    if ( K9_KULLANICININ_CALISTIGI_SIRKET() EQ 1 ) {
        UNPACK_DOUBLE_ARRAY ( query.VALUE("ent_borc_array").toString()  ,HESABIN_BORC_BAKIYESI     ,K9_ARRAY_SIZE );
        UNPACK_DOUBLE_ARRAY ( query.VALUE("ent_alacak_array").toString(),HESABIN_ALACAK_BAKIYESI   ,K9_ARRAY_SIZE );
    }
    else {
        UNPACK_DOUBLE_ARRAY ( query.VALUE("toplam_borc_array").toString()  ,HESABIN_BORC_BAKIYESI     ,K9_ARRAY_SIZE );
        UNPACK_DOUBLE_ARRAY ( query.VALUE("toplam_alacak_array").toString(),HESABIN_ALACAK_BAKIYESI   ,K9_ARRAY_SIZE );
    }

    double hesap_toplam_borc   = HESABIN_BORC_BAKIYESI   [ K9_SON_BAKIYE ];
    double hesap_toplam_alacak = HESABIN_ALACAK_BAKIYESI [ K9_SON_BAKIYE ];

    delete [] HESABIN_BORC_BAKIYESI;
    delete [] HESABIN_ALACAK_BAKIYESI;

    if ( tam_hesap_kodu.at(0) EQ '1' OR tam_hesap_kodu.at(0) EQ '2') {

        if ( hesap_toplam_alacak >= hesap_toplam_borc ) {
            return ADAK_OK;
        }

        if ( hesap_toplam_alacak + eklenecek_alacak > hesap_toplam_borc + eklenecek_borc ) {
            ADAK_MSG_ENUM msg_enum = ADAK_YES_NO(QString("%1 %2 alacak bakiye veriyor. Yine de devam etmek istermisiniz ?")
                                                 .arg(tam_hesap_kodu)
                                                 .arg(query.VALUE(1).toString()),NULL,NULL);
            if ( msg_enum NE ADAK_YES ) {
                return ADAK_FAIL;
            }
        }
    }
    else if ( tam_hesap_kodu.at(0) EQ '3' OR tam_hesap_kodu.at(0) EQ '4' OR tam_hesap_kodu.at(0) EQ '5') {

        if ( hesap_toplam_alacak < hesap_toplam_borc ) {
            return ADAK_OK;
        }

        if ( hesap_toplam_alacak + eklenecek_alacak < hesap_toplam_borc + eklenecek_borc ) {
            ADAK_MSG_ENUM msg_enum = ADAK_YES_NO(QString("%1 %2 borc bakiye veriyor. Yine de devam etmek istermisiniz ?")
                                                 .arg(tam_hesap_kodu)
                                                 .arg(query.VALUE(1).toString()),NULL,NULL);
            if ( msg_enum NE ADAK_YES ) {
                return ADAK_FAIL;
            }
        }
    }

    return ADAK_OK;
}
예제 #28
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();
}
int ADRES_RAPOR_FILTRESI_BATCH::CHECK_VAR ( QObject * p_object )
{

    SQL_QUERY sql_query ( DB );

    if ( p_object EQ m_ui->radioButton_firmalar ) {
        if ( m_ui->radioButton_firmalar->isChecked() EQ true ) {
            m_adres_kayit_turu = FIRMA_KAYDI;
        }
    }
    else if ( p_object EQ m_ui->radioButton_sahislar ) {
        if ( m_ui->radioButton_sahislar->isChecked() EQ true ) {
            m_adres_kayit_turu = SAHIS_KAYDI;
        }
    }
    else if ( p_object EQ m_ui->radioButton_firma_sahis ) {
        if ( m_ui->radioButton_firma_sahis->isChecked() EQ true ) {
            m_adres_kayit_turu = SAHIS_ARTI_FIRMA;
        }
    }
    else if ( p_object EQ m_ui->checkBox_grup_secimi ) {
        if ( m_ui->checkBox_grup_secimi->isChecked() EQ true ) {
            m_ui->frame_gruplar->setEnabled ( true );
            SET_FOCUS( m_ui->button_grup_ekle );
        }
        else {
            m_ui->frame_gruplar->setEnabled ( false );
            m_ui->textEdit_gruplar->clear();
        }
    }
    else if ( p_object EQ m_ui->checkBox_adres_kaydi_secimi ) {
        if ( m_ui->checkBox_adres_kaydi_secimi->isChecked() EQ true ) {
            m_ui->frame_adres_kayitlari->setEnabled ( true );
            SET_FOCUS( m_ui->button_adres_kaydi_ekle );
        }
        else {
            m_ui->frame_adres_kayitlari->setEnabled ( false );
        }
    }
    else if ( p_object EQ m_ui->button_grup_ekle ) {


        if ( OPEN_GRUP_SECIM( E9_PROGRAMI,ADRES_MODULU , &m_grup_idleri , DB , this , true) EQ true ) {
            m_ui->textEdit_gruplar->setText ( GRP_GRUP_ADLARINI_BUL(&m_grup_idleri , new QStringList() , new QStringList()) );
        }

    }

    else if ( p_object EQ m_ui->button_adres_kaydi_ekle ) {

        QList<int> adres_id = OPEN_ADRES_ARAMA_LIST( m_adres_kayit_turu,true, this );

        if ( adres_id.size() EQ 0 ) {
            return ADAK_OK;
        }

        QString adres_id_str = "";

        for ( int i = 0 ; i < adres_id.size() ; i++ ) {
            if ( adres_id_str.isEmpty() EQ false ) {
                adres_id_str.append(" OR ");
            }

            adres_id_str.append(QString(" adres_id=" + QVariant(adres_id.at(i)).toString()));
        }

        sql_query.PREPARE_SELECT ( "adr_adresler","firma_sahis_adi,email,adres_id",adres_id_str );

        if ( sql_query.SELECT() EQ 0 ) {
            ADAK_WARNING( tr ( "Seçili kayıt bulunamadı"), NULL, this );
            return ADAK_FAIL;
        }

        bool email_bulundu           = false;
        bool table_widget_temizlendi = false;

        while ( sql_query.NEXT() EQ true ) {
            if ( m_adres_rapor_turu EQ TOPLU_MAIL_GONDERIMI ) {
                if (sql_query.VALUE(1).toString().isEmpty() EQ true ) {
                    SQL_QUERY query (DB);
                    query.PREPARE_SELECT("adr_emailler","email_adresi","gizli_kayit=:gizli_kayit AND adres_kayit_id=:adres_kayit_id");
                    query.SET_VALUE(":gizli_kayit"   ,0 );
                    query.SET_VALUE(":adres_kayit_id",sql_query.VALUE(2).toInt());
                    if ( query.SELECT() EQ 0 ) {
                        continue;
                    }
                }
                email_bulundu = true;
            }

            QString firma_sahis_adi = sql_query.VALUE(0).toString();

            if ( table_widget_temizlendi EQ false ) {
                for ( int i = m_ui->tableWidget_adres_kayitlari->rowCount() ; i > 0 ; i-- ) {
                    m_ui->tableWidget_adres_kayitlari->removeRow(i-1);
                }

                table_widget_temizlendi = true;
            }

            m_ui->tableWidget_adres_kayitlari->insertRow ( m_ui->tableWidget_adres_kayitlari->rowCount() );
            m_ui->tableWidget_adres_kayitlari->setItem   ( m_ui->tableWidget_adres_kayitlari->rowCount() -1, 0, new QTableWidgetItem ( QVariant( sql_query.VALUE(2) ).toString()));
            m_ui->tableWidget_adres_kayitlari->setItem   ( m_ui->tableWidget_adres_kayitlari->rowCount() -1, 1, new QTableWidgetItem ( firma_sahis_adi ));
        }

        if ( m_adres_rapor_turu EQ TOPLU_MAIL_GONDERIMI ) {
            if (email_bulundu EQ false ) {
                ADAK_WARNING( tr ( "Seçili kayıtta email adresi bulunamadı."), NULL, this );
                return ADAK_FAIL;
            }
        }
    }
    else if ( p_object EQ m_ui->tableWidget_adres_kayitlari ) {
        if ( p_object->objectName() EQ "ITEM_DOUBLE_CLICKED" ) {
            int clicked_row = m_ui->tableWidget_adres_kayitlari->currentRow();
            m_ui->tableWidget_adres_kayitlari->removeRow ( clicked_row );
        }
    }

    return ADAK_OK;
}
예제 #30
0
int MUH_HESAP_EKLEME_FISI::GET_FIS_RECORD ( int p_fis_id )
{
    SQL_QUERY query ( DB );

    query.PREPARE_SELECT("muh_hesaplar" , "tam_hesap_kodu, hesap_ismi, hesap_seviyesi, hesap_kodu" ,
                         "hesap_id = :hesap_id");
    query.SET_VALUE      (":hesap_id", p_fis_id );

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

    query.NEXT();

    m_ui->line_edit_hesap_kodu->setText( query.VALUE(0).toString() );
    m_ui->lineEdit_hesap_ismi->setText( query.VALUE(1).toString() );

    m_ana_hesap_seviyesi = query.VALUE(2).toInt();
    m_ana_hesap_kodu     = query.VALUE(3).toString();


    m_ui->line_edit_hesap_kodu->setEnabled( false );
    m_ui->lineEdit_hesap_ismi->setEnabled( false );

    if ( m_ana_hesap_seviyesi EQ 1 ) {
        m_ui->line_edit_hesap_kodu->setEnabled( true );
        m_ui->lineEdit_hesap_ismi->setEnabled ( true );
    }

    query.PREPARE_SELECT("muh_hesaplar" , "hesap_id, hesap_kodu, hesap_ismi" ,
                         "parent_id = :parent_id");
    query.SET_VALUE  ( ":parent_id", p_fis_id );

    if ( query.SELECT("hesap_kodu") EQ 0 ) {
        return ADAK_OK;
    }

    int current_row = 0;

    while ( query.NEXT() EQ true ) {

        current_row        = ADD_NEW_LINE();

        QLineEdit * lineEdit_hesap_kodu     =  ( QLineEdit * ) m_ui->tablewidget_alt_hesaplar->cellWidget ( current_row, HESAP_KODU_COLUMN      );
        QLineEdit * lineEdit_hesap_ismi     =  ( QLineEdit * ) m_ui->tablewidget_alt_hesaplar->cellWidget ( current_row, HESAP_ISMI_COLUMN      );
        QLineEdit * lineEdit_gruplar        =  ( QLineEdit * ) m_ui->tablewidget_alt_hesaplar->cellWidget ( current_row, HESAP_GRUPLAR          );
        QLineEdit * lineEdit_tam_hesap_kodu =  ( QLineEdit * ) m_ui->tablewidget_alt_hesaplar->cellWidget ( current_row, TAM_HESAP_KODU_COLUMN  );

        QTableWidgetItem * new_item;

        new_item = new QTableWidgetItem         ( query.VALUE(0).toString() );
        m_ui->tablewidget_alt_hesaplar->setItem (  current_row, ROW_ID_COLUMN, new_item );

        new_item = new QTableWidgetItem         ( QVariant ( p_fis_id ).toString() );
        m_ui->tablewidget_alt_hesaplar->setItem ( current_row, ANA_HESAP_ID_COLUMN, new_item );

        lineEdit_hesap_kodu->setText        ( query.VALUE(1).toString() );
        lineEdit_hesap_ismi->setText        ( query.VALUE(2).toString() );
        lineEdit_tam_hesap_kodu->setText    ( m_ui->line_edit_hesap_kodu->text() + m_delimeter + query.VALUE(1).toString() );

        QList<int> grup_idleri;

        lineEdit_gruplar->setText(GRP_KAYDIN_GRUPLARINI_BUL(E9_PROGRAMI,MUHASEBE_MODULU,query.VALUE(0).toInt(),&grup_idleri,new QStringList(), new QStringList()));

        QString    grup_id_str = "";

        for ( int i = 0 ; i < grup_idleri.size() ; i++ ) {
            if ( grup_id_str.isEmpty() EQ false ) {
                grup_id_str.append("\t");
            }
            grup_id_str .append( QVariant(grup_idleri.at(i)).toString());
        }

        m_ui->tablewidget_alt_hesaplar->setItem(current_row,GRUP_IDLERI,new QTableWidgetItem(grup_id_str));
    }

    return ADAK_OK;
}