Ejemplo n.º 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();
}
Ejemplo n.º 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;
}
Ejemplo n.º 3
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;
}
Ejemplo n.º 4
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;
}
Ejemplo n.º 5
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();
}
Ejemplo n.º 6
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;
}
Ejemplo n.º 7
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);
}
Ejemplo n.º 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;
}
Ejemplo n.º 9
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++;
        }
    }
}
Ejemplo n.º 10
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;
}
Ejemplo n.º 11
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;
}
Ejemplo n.º 12
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();
}
Ejemplo n.º 13
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();
}
Ejemplo n.º 14
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();
}
Ejemplo n.º 15
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() );
    }
}
Ejemplo n.º 16
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);
    }
}
Ejemplo n.º 17
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;
}
Ejemplo n.º 18
0
void K9_ONAR_BATCH::TUM_SISTEMI_ONAR()
{

    int program_id = K9_PROGRAMI;

    MUH_ENT_FISLERINI_SIL    (program_id , MUHASEBE_MODULU , DB);

    CARI_ENT_FISLERINI_SIL   (program_id , CARI_MODULU     , DB);

    BNK_ENT_FISLERINI_SIL    (program_id , BANKA_MODULU    , DB);

    // BU FONKSIYON ENT FISLERI SILINMEDEN ONCE CAGRILMALIDIR.
    // ICIN CEK DURUMLARI SILBASTAN OLUSTURULMAKTADIR.
    TUM_CEK_DURUMLARINI_ONAR();

    CEK_ENT_FISLERINI_SIL    (program_id , CEKSENET_MODULU , DB);

    FAT_ENT_FISLERINI_SIL    (program_id , FATURA_MODULU   , DB);

    PRK_ENT_FISLERINI_SIL    (program_id , PERAKENDE_MODULU, DB);

    // Personel Modulu Disaridan herhangi bir Modul tarafindan kullanilmadigi icin silinecek bir sey yok,

    QString info = GET_MUH_ENT_KALAN_FIS_VE_SATIR_BILGISI(program_id);

    if ( info.isEmpty() EQ false ) {
        BILGILENDIR (QString(" <font color = \"red\">MUHASEBE MODÜLÜ</font>" + info + "<br>"));
    }

    info = GET_CARI_ENT_KALAN_FIS_VE_SATIR_BILGISI(program_id);

    if ( info.isEmpty() EQ false ) {
        BILGILENDIR (QString(" <font color = \"red\">CARİ MODÜLÜ</font>" + info + "<br>"));
    }

    info = GET_BNK_HAREKET_ENT_KALAN_FIS_VE_SATIR_BILGISI(program_id);

    if ( info.isEmpty() EQ false ) {
        BILGILENDIR (QString(" <font color = \"red\">BANKA MODÜLÜ</font>" + info + "<br>"));
    }
    info = GET_BNK_DEFTER_ENT_KALAN_FIS_VE_SATIR_BILGISI(program_id);

    if ( info.isEmpty() EQ false ) {
        BILGILENDIR (QString(" <font color = \"red\">BANKA MODÜLÜ</font>" + info + "<br>"));
    }

    info = GET_BNK_MAKRO_ENT_KALAN_FIS_VE_SATIR_BILGISI(program_id);

    if ( info.isEmpty() EQ false ) {
        BILGILENDIR (QString(" <font color = \"red\">BANKA MODÜLÜ</font>" + info + "<br>"));
    }

    info = GET_CEK_ENT_KALAN_FIS_VE_SATIR_BILGISI(program_id);

    if ( info.isEmpty() EQ false ) {
        BILGILENDIR (QString(" <font color = \"red\">ÇEKSENET MODÜLÜ</font>" + info + "<br>"));
    }

    info = GET_FAT_ENT_KALAN_FIS_VE_SATIR_BILGISI(program_id);

    if ( info.isEmpty() EQ false ) {
        BILGILENDIR (QString(" <font color = \"red\">FATURA MODÜLÜ</font>" + info + "<br>"));
    }

    info = GET_PRK_ENT_KALAN_FIS_VE_SATIR_BILGISI(program_id);

    if ( info.isEmpty() EQ false ) {
        BILGILENDIR (QString(" <font color = \"red\">PERAKENDE MODÜLÜ</font>" + info + "<br>"));
    }

    MUHASEBE_BAKIYELERINI_SIFIRLA ();
    MUHASEBE_MODULUNU_ONAR();

    CARI_BAKIYELERINI_SIFIRLA ();
    CARI_MODULUNU_ONAR();

    BANKA_BAKIYELERINI_SIFIRLA ();
    BANKA_MODULUNU_ONAR();

    STOK_BAKIYELERINI_SIFIRLA ();
    STOK_MODULUNU_ONAR();

    ISLETME_MODULUNU_ONAR();

    CARI_ENT_FISLERINI_OLUSTUR(program_id);

    BILGILENDIR (QString(" <font color = \"red\">%1</font> CARİ MODÜLÜ ONARILDI" + info + "<br>").arg(QTime::currentTime().toString("hh:mm:ss")));

    BNK_ENT_FISLERINI_OLUSTUR(program_id);

    BILGILENDIR (QString(" <font color = \"red\">%1</font> BANKA MODÜLÜ ONARILDI" + info + "<br>").arg(QTime::currentTime().toString("hh:mm:ss")));

    CEK_ENT_FISLERINI_OLUSTUR(program_id);

    BILGILENDIR (QString(" <font color = \"red\">%1</font> ÇEKSENET MODÜLÜ ONARILDI" + info + "<br>").arg(QTime::currentTime().toString("hh:mm:ss")));

    FAT_ENT_FISLERINI_OLUSTUR(program_id);

    BILGILENDIR (QString(" <font color = \"red\">%1</font> FATURA MODÜLÜ ONARILDI" + info + "<br>").arg(QTime::currentTime().toString("hh:mm:ss")));

    PRK_ENT_FISLERINI_OLUSTUR(program_id);

    BILGILENDIR (QString(" <font color = \"red\">%1</font> PERAKENDE MODÜLÜ ONARILDI" + info + "<br>").arg(QTime::currentTime().toString("hh:mm:ss")));

    STK_ENT_FISLERINI_OLUSTUR( program_id );

    BILGILENDIR (QString(" <font color = \"red\">%1</font> STOK MODÜLÜ ONARILDI" + info + "<br>").arg(QTime::currentTime().toString("hh:mm:ss")));

    PRS_ENT_FISLERINI_OLUSTUR(program_id);
    BILGILENDIR (QString(" <font color = \"red\">%1</font> PERSONEL MODÜLÜ ONARILDI" + info + "<br>").arg(QTime::currentTime().toString("hh:mm:ss")));

    DMR_ENT_FISLERINI_OLUSTUR(program_id);
    BILGILENDIR (QString(" <font color = \"red\">%1</font> SABİT KIYMET MODÜLÜ ONARILDI" + info + "<br>").arg(QTime::currentTime().toString("hh:mm:ss")));

    SM_MAKBUZ_ENT_FISLERINI_OLUSTUR(program_id);
    BILGILENDIR (QString(" <font color = \"red\">%1</font> SM MAKBUZ MODÜLÜ ONARILDI" + info + "<br>").arg(QTime::currentTime().toString("hh:mm:ss")));

    //Gruplardaki gruba kayitli sayisinda hata varsa kullanilabilir.

    SQL_QUERY query (DB);
    SQL_QUERY sql_query (DB);

    query.PREPARE_SELECT("adak_gruplar","grup_id,program_id,modul_id");
    query.SELECT();

    while( query.NEXT() EQ true ) {
        QList<int> grup_idleri;
        grup_idleri << query.VALUE(0).toInt();
        sql_query.PREPARE_UPDATE("adak_gruplar","grup_id","gruptaki_kayit_sayisi","grup_id=:grup_id");
        sql_query.SET_VALUE( ":grup_id",query.VALUE(0).toInt());
        sql_query.SET_VALUE( ":gruptaki_kayit_sayisi",GRP_GRUBA_EKLI_KAYITLARI_BUL(query.VALUE(1).toInt(),query.VALUE(2).toInt(),grup_idleri).size());
        sql_query.UPDATE();
    }

    BILGILENDIR (QString(" <font color = \"red\">%1</font> GRUPLAR ONARILDI" + info + "<br>").arg(QTime::currentTime().toString("hh:mm:ss")));


    BILGILENDIR (QString(" <font color = \"red\">%1</font> TÜM SİSTEM ONARILDI" + info + "<br>").arg(QTime::currentTime().toString("hh:mm:ss")));
}
Ejemplo n.º 19
0
int MUH_FIS_KOPYALAMA_BATCH::CHECK_VAR ( QObject * p_object )
{
    SQL_QUERY   query ( DB );

    if ( p_object EQ m_ui->adakDate_yeni_fis_tarihi ) {

        if ( m_fis_turu EQ ENUM_ACILIS_FISI OR m_fis_turu EQ ENUM_KAPANIS_FISI ) {
            MSG_WARNING( tr ( "Fiş Tarihini değiştiremezsiniz!.." ), NULL );
            return ADAK_FAIL_UNDO;
        }

        int siradaki_fis_no = MUH_SIRADAKI_FIS_NO_AL ( m_ui->adakDate_yeni_fis_tarihi->DATE() );
        m_ui->lineEdit_yeni_fis_no->setText ( QVariant (  siradaki_fis_no ).toString() );
    }

    else if ( p_object EQ m_ui->search_edit_fis_no ) {

        if ( m_ui->search_edit_fis_no->GET_TEXT().isEmpty() EQ true ) {
            m_fis_id   = 0;
            m_fis_turu = -1;
            m_ui->commaedit_top_borc->clear();
            m_ui->commaedit_top_alacak->clear();
            m_ui->textedit_aciklama->clear();
            return ADAK_OK;
        }

        query.PREPARE_SELECT("muh_fisler" , "fis_id ,fis_tarihi , aciklama , toplam_borc, toplam_alacak, "
                             "kasa_hesabi_id, fis_turu " , "fis_no = :fis_no AND fis_tarihi = :fis_tarihi");


        query.SET_VALUE ( ":fis_no"    , m_ui->search_edit_fis_no->GET_TEXT().toInt() );
        query.SET_VALUE ( ":fis_tarihi", m_ui->adakDate_kopyalanacak_fis_tarihi->DATE() );

        if ( query.SELECT() EQ 0 ) {
            MSG_WARNING( tr ( "Fiş bulunamadı" ), m_ui->search_edit_fis_no );

            return ADAK_FAIL_UNDO;
        }

        query.NEXT();

        m_fis_id = query.VALUE(0).toInt();

        m_ui->adakDate_kopyalanacak_fis_tarihi->SET_DATE(  query.VALUE(1).toString()  );
        m_ui->textedit_aciklama->setPlainText           ( query.VALUE(2).toString() );
        m_ui->commaedit_top_borc->SET_DOUBLE            ( query.VALUE(3).toDouble() );
        m_ui->commaedit_top_alacak->SET_DOUBLE          ( query.VALUE(4).toDouble() ) ;

        int siradaki_fis_no = MUH_SIRADAKI_FIS_NO_AL    ( m_ui->adakDate_yeni_fis_tarihi->DATE() );
        m_ui->lineEdit_yeni_fis_no->setText ( QVariant  ( siradaki_fis_no ).toString() );

        m_fis_turu = query.VALUE(6).toInt();

    }
    else if ( p_object EQ m_ui->lineEdit_yeni_fis_no ) {

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

        query.SET_VALUE ( ":fis_no",       m_ui->lineEdit_yeni_fis_no->text() );
        query.SET_VALUE ( ":fis_tarihi",   m_ui->adakDate_yeni_fis_tarihi->DATE() );

        if ( query.SELECT() NE 0 ) {
            MSG_WARNING( tr ( "Bu fiş numarasına sahip başka bir fiş vardır. Bu numaraya fiş kopyalayamazsınız!.." ), m_ui->lineEdit_yeni_fis_no  );

            return ADAK_FAIL_UNDO;
        }
    }
    return ADAK_OK;
}
Ejemplo n.º 20
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);
}
Ejemplo n.º 21
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();;
    }
}
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;
}
Ejemplo n.º 23
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;
}
Ejemplo n.º 24
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;
}
Ejemplo n.º 25
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;
}
Ejemplo n.º 26
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();
}
Ejemplo n.º 27
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;
}
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();


}
Ejemplo n.º 29
0
int PRS_EK_ODENEK_VE_KESINTI_FISI::GET_FIS_RECORD ( int record_id )
{

    SQL_QUERY   sql_query(DB);
    SQL_QUERY   query    (DB);

    sql_query.PREPARE_SELECT( "prs_kesinti_odenek_tanimlar ",
                              "kes_ode_tanim_id, kesinti_odenek_adi, aciklama, "
                              "bordro_donemi_ay, bordro_donemi_yil, "
                              "ssk_kesintisi_iceriyor_mu, damga_vergisi_iceriyor_mu,"
                              "gelir_vergisi_iceriyor_mu, kesinti_odenek_tarihi,"
                              "yuzde_mi, tutar, kesinti_odenek_no, bordrosu_kesildi_mi ",
                              "kes_ode_tanim_id = :kes_ode_tanim_id   "
                              "AND kesinti_odenek_turu = :kesinti_odenek_turu ");

    sql_query.SET_VALUE( ":kes_ode_tanim_id", record_id );
    sql_query.SET_VALUE( ":kesinti_odenek_turu", m_fis_turu );

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

    sql_query.NEXT();

    m_odenek_kesinti_no     = sql_query.VALUE("kesinti_odenek_no").toInt();
    m_bordrosu_kesildi_mi   = sql_query.VALUE("bordrosu_kesildi_mi").toInt();

    m_ui->lineEdit_odenek_kesinti_adi->setText( sql_query.VALUE("kesinti_odenek_adi").toString() );

    m_ui->adakDate_odenek_kesinti_tarihi->SET_DATE( sql_query.VALUE("kesinti_odenek_tarihi").toString() );
    FIND_AND_SET_COMBOBOX_TEXT( m_ui->comboBox_bordro_donemi_ay, K9_GET_AYLAR_STRING( sql_query.VALUE("bordro_donemi_ay").toInt()));
    FIND_AND_SET_COMBOBOX_TEXT( m_ui->comboBox_bordro_donemi_yil, sql_query.VALUE("bordro_donemi_yil").toString() );

    FIND_AND_SET_COMBOBOX_TEXT( m_ui->comboBox_yuzde_mi, tr("TUTAR"));
    if ( sql_query.VALUE( "yuzde_mi").toInt() EQ PRS_YUZDE ) {
        FIND_AND_SET_COMBOBOX_TEXT( m_ui->comboBox_yuzde_mi, tr("YÜZDE"));
    }

    m_ui->commaEdit_tutar->SET_DOUBLE( sql_query.VALUE("tutar").toDouble());

    m_ui->checkBox_ssk_kesintisi->setChecked( sql_query.VALUE("ssk_kesintisi_iceriyor_mu").toInt() );
    m_ui->checkBox_gelir_vergisi_kesintisi->setChecked( sql_query.VALUE("gelir_vergisi_iceriyor_mu").toInt() );
    m_ui->checkBox_damga_vergisi_kesintisi->setChecked( sql_query.VALUE("damga_vergisi_iceriyor_mu").toInt() );


    query.PREPARE_SELECT ( "prs_ek_kesintiler_odenekler, prs_personeller",
                           "kesinti_odenek_id, prs_ek_kesintiler_odenekler.personel_id, cari_hesap_id, order_number ",
                           "prs_ek_kesintiler_odenekler.personel_id = prs_personeller.personel_id "
                           "AND kes_ode_tanim_id = :kes_ode_tanim_id ");

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

    query.SELECT("order_number ASC" );

    while ( query.NEXT() EQ true ) {

        int p_current_row;

        p_current_row = ADD_NEW_LINE ();

        QSearchEdit * search_edit_persosnel_kodu     = ( QSearchEdit  * ) m_ui->table_widget->cellWidget ( p_current_row, PERSONEL_KODU );
        QLineEdit   * lineedit_personel_adi_soyadi   = ( QLineEdit    * ) m_ui->table_widget->cellWidget ( p_current_row, PERSONEL_AD_SOYAD );

        search_edit_persosnel_kodu->SET_TEXT( CARI_FIND_HESAP_KODU( query.VALUE("cari_hesap_id").toInt()));
        lineedit_personel_adi_soyadi->setText( CARI_FIND_HESAP_ISMI( query.VALUE("cari_hesap_id").toInt() ));

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

        QTableWidgetItem * new_item;

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

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

        new_item = new QTableWidgetItem(tr("%1").arg(order_number));
        m_ui->table_widget->setItem(p_current_row, ORDER_NUMBER_COLUMN, new_item);

    }

    return ADAK_OK;
}
Ejemplo n.º 30
0
void MUH_FIS_KOPYALAMA_BATCH::RUN_BATCH()
{

    DB->START_TRANSACTION();
    SQL_QUERY query ( DB );

    MUH_FIS_STRUCT        *  NEW_MUH_FIS        = new MUH_FIS_STRUCT;
    MUH_FIS_SATIRI_STRUCT *  NEW_MUH_FIS_SATIRI = new MUH_FIS_SATIRI_STRUCT;

    MUH_CLEAR_FIS_STRUCT(NEW_MUH_FIS);


    int siradaki_fis_no = MUH_SIRADAKI_FIS_NO_AL ( m_ui->adakDate_yeni_fis_tarihi->DATE() );

    if ( siradaki_fis_no NE m_ui->lineEdit_yeni_fis_no->text().toInt() ) {
        m_ui->lineEdit_yeni_fis_no->setText ( QVariant ( siradaki_fis_no ).toString() );
    }

    NEW_MUH_FIS->fis_no           = m_ui->lineEdit_yeni_fis_no->text().toInt();
    NEW_MUH_FIS->fis_tarihi       = m_ui->adakDate_yeni_fis_tarihi->DATE();
    NEW_MUH_FIS->aciklama         = m_ui->textedit_new_aciklama->toPlainText();
    NEW_MUH_FIS->kasa_hesabi_id   = M_FIS->kasa_hesabi_id;
    NEW_MUH_FIS->fis_turu         = M_FIS->fis_turu;
    NEW_MUH_FIS->modul_id         = MUHASEBE_MODULU;
    NEW_MUH_FIS->program_id       = M_FIS->program_id;
    NEW_MUH_FIS->base_fis_id      = 0;

    int record_id  = MUH_FIS_EKLE( NEW_MUH_FIS );


    query.PREPARE_SELECT("muh_fis_satirlari" , "fis_satiri_id" , "fis_id =:fis_id AND gizli_satir_mi = :gizli_satir_mi ");

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

    if( query.SELECT() EQ  0 ){
        DB->CANCEL_TRANSACTION();
        MSG_WARNING( tr ( "Kopyalanan fiş satırı bulunamadı" ), NULL );
        return;
    }

    while ( query.NEXT() EQ true ) {

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

        MUH_CLEAR_FIS_SATIRI_STRUCT( NEW_MUH_FIS_SATIRI);

        MUH_FIS_SATIRINI_OKU( NEW_MUH_FIS_SATIRI, fis_satiri_id );

        NEW_MUH_FIS_SATIRI->fis_id = record_id;

        MUH_FIS_SATIRI_EKLE( NEW_MUH_FIS, NEW_MUH_FIS_SATIRI );

    }

    if ( record_id < 1 ) {
        MSG_WARNING( tr ( "Fiş Kopyalanamadı." ), NULL );
    }

    m_ui->search_edit_fis_no->SET_TEXT ( "" );
    m_ui->adakDate_yeni_fis_tarihi->SET_DATE(MALI_YIL_FIRST_DATE() );
    m_ui->commaedit_top_alacak->clear();
    m_ui->commaedit_top_borc->clear();
    m_ui->textedit_aciklama->clear();
    m_ui->textedit_new_aciklama->clear();

    MSG_INFO("Fiş Kopyalandı.", NULL );

    QString log_detaylari = QObject::tr ( "Log Türü - Fiş Kopyalama ," );
    log_detaylari.append ( MUH_GET_FIS_TURLERI_STRING ( M_FIS->fis_turu ) + "," + M_FIS->fis_tarihi + ",Fiş No : "  +
                           QVariant( M_FIS->fis_no ).toString() + ",Toplam Borç : " +
                           VIRGUL_EKLE ( QVariant ( ROUND ( M_FIS->toplam_borc ) ).toString() ) + ",Toplam Alacak : " +
                           VIRGUL_EKLE ( QVariant ( ROUND ( M_FIS->toplam_alacak ) ).toString() ) );

    log_detaylari.append ( "--Fişi Kopyalandı" );

    E9_LOG_KAYDI_EKLE ( MUHASEBE_MODULU , LOG_MUH_FIS_KOPYALAMA , LOG_ISLEM_ADD , log_detaylari );

    DB->COMMIT_TRANSACTION  ();

    delete NEW_MUH_FIS;
    delete NEW_MUH_FIS_SATIRI;
}