Exemple #1
0
        private void btnSave_Click(object sender, EventArgs e)
        {
            strDeptIssuAccId = "";
            if (lstAccName.SelectedIndex == -1 || lstAccNo.SelectedIndex == -1)
            {
                glb_function.MsgBox("الرجاء التاكد من ادخال رقم الحساب");
                return;
            }
            if (lstAccNo.SelectedValue.ToString() != lstAccName.SelectedValue.ToString())
            {
                glb_function.MsgBox("الرجاء التاكد من ان رقم الحساب يطابق اسم الحساب");
                return;
            }



            ConnectionToDB cnn = new ConnectionToDB();
            DataTable      dt;
            string         strJournalId = "";
            int            icheck       = 0;


            ConnectionToDB.objCmd = new Oracle.ManagedDataAccess.Client.OracleCommand();

            string strHeader  = GetJournalHeader();
            string strDetails = GetJournalDetails();

            ConnectionToDB.objCmd.Parameters.Add("xml_journal_header", Oracle.ManagedDataAccess.Client.OracleDbType.Clob).Value   = strHeader;
            ConnectionToDB.objCmd.Parameters.Add("xml_journal_details", Oracle.ManagedDataAccess.Client.OracleDbType.Clob).Value  = strDetails;
            ConnectionToDB.objCmd.Parameters.Add("sqlStat", Oracle.ManagedDataAccess.Client.OracleDbType.Varchar2).Value          = "";
            ConnectionToDB.objCmd.Parameters.Add("strHash", Oracle.ManagedDataAccess.Client.OracleDbType.Varchar2).Value          = "";
            ConnectionToDB.objCmd.Parameters.Add("icheckNaturalAcc", Oracle.ManagedDataAccess.Client.OracleDbType.Char).Value     = "0";
            ConnectionToDB.objCmd.Parameters.Add("ExceedRate", Oracle.ManagedDataAccess.Client.OracleDbType.Char).Value           = "0";
            ConnectionToDB.objCmd.Parameters.Add("swid", Oracle.ManagedDataAccess.Client.OracleDbType.Varchar2, 2000).Direction   = ParameterDirection.Output;
            ConnectionToDB.objCmd.Parameters.Add("Result", Oracle.ManagedDataAccess.Client.OracleDbType.Varchar2, 2000).Direction = ParameterDirection.Output;
            string strResult = cnn.ExecutePro("AccountsPack.journal_inser_update", "Result");

            strJournalId = ConnectionToDB.objCmd.Parameters["swid"].Value.ToString();


            if (strResult.ToUpper() != "SUCCEED")
            {
                cnn.glb_RollbackTransaction();
                glb_function.MsgBox("حدث خطأ اثناء عملية الحفظ");
                return;
            }


            for (int i = 0; i < dgvPrecuremenExp.Rows.Count; i++)
            {
                if (dgvPrecuremenExp[clmSwid.Index, i].Value.ToString() == "")
                {
                    icheck = cnn.TranDataToDB("insert into PROCUREMENT_EXPENSES values((select nvl(max(swid),0)+1 from PROCUREMENT_EXPENSES),sysdate," + glb_function.glb_strUserId + ",'فعال','" +
                                              txtISSUED_TYPE.Text + "'," + txtISSUED_ID.Text + "," + (dgvPrecuremenExp[clmPeopleId.Index, i].Value.ToString() == ""?"null": dgvPrecuremenExp[clmPeopleId.Index, i].Value.ToString()) +
                                              "," + dgvPrecuremenExp[clmExpensessId.Index, i].Value.ToString() + "," + dgvPrecuremenExp[clmExpValue.Index, i].Value.ToString() + "," +
                                              "" + strJournalId + ",'" +
                                              dgvPrecuremenExp[clmNote.Index, i].Value.ToString() + "','" +
                                              dgvPrecuremenExp[clmDoc_no.Index, i].Value.ToString() + "','" +
                                              dgvPrecuremenExp[clmAddToCost.Index, i].Value.ToString() + "'," + dgvPrecuremenExp[clmMainValue.Index, i].Value.ToString() + ",'" + dgvPrecuremenExp[clmStockValue.Index, i].Value.ToString() + "','" + dgvPrecuremenExp[clmExpCurrId.Index, i].Value.ToString() + "')");

                    if (icheck <= 0)
                    {
                        cnn.glb_RollbackTransaction();
                        glb_function.MsgBox("حدث خطأ عند عملية الحفظ");
                        return;
                    }

                    if (txtISSUED_TYPE.Text == "تحاويل مخزنية")
                    {
                        if (dgvPrecuremenExp[clmAddToCost.Index, i].Value.ToString() == "نعم")
                        {
                            icheck = cnn.TranDataToDB("update shipping_LIST set EXPENSES_ADD_VALUE_accid=" + strDeptIssuAccId + " ,EXPENSES_ADD_VALUE=EXPENSES_ADD_VALUE+" + dgvPrecuremenExp[clmMainValue.Index, i].Value.ToString() + " where swid=" + txtISSUED_ID.Text);

                            if (icheck <= 0)
                            {
                                cnn.glb_RollbackTransaction();
                                glb_function.MsgBox("حدث خطأ عند عملية الحفظ");
                                return;
                            }
                        }
                    }
                }
            }


            cnn.glb_commitTransaction();
            glb_function.MsgBox("تمت عملية الحفظ بنجاح");
            GetExpensess();
        }
        private void btnConfirm_Click(object sender, EventArgs e)
        {
            if (lstBILL_TYPE.Text == "نقد" && lstAccNo.SelectedIndex == -1)
            {
                glb_function.MsgBox("الرجاء اختيار الحساب");
                return;
            }

            string strJournalId = "";
            int    icheck       = 0;

            ConnectionToDB cnn = new ConnectionToDB();

            ConnectionToDB.objCmd = new Oracle.ManagedDataAccess.Client.OracleCommand();

            string strHeader  = GetJournalHeader();
            string strDetails = GetJournalDetails();

            ConnectionToDB.objCmd.Parameters.Add("xml_journal_header", Oracle.ManagedDataAccess.Client.OracleDbType.Clob).Value   = strHeader;
            ConnectionToDB.objCmd.Parameters.Add("xml_journal_details", Oracle.ManagedDataAccess.Client.OracleDbType.Clob).Value  = strDetails;
            ConnectionToDB.objCmd.Parameters.Add("sqlStat", Oracle.ManagedDataAccess.Client.OracleDbType.Varchar2).Value          = "";
            ConnectionToDB.objCmd.Parameters.Add("strHash", Oracle.ManagedDataAccess.Client.OracleDbType.Varchar2).Value          = "";
            ConnectionToDB.objCmd.Parameters.Add("icheckNaturalAcc", Oracle.ManagedDataAccess.Client.OracleDbType.Char).Value     = "0";
            ConnectionToDB.objCmd.Parameters.Add("ExceedRate", Oracle.ManagedDataAccess.Client.OracleDbType.Char).Value           = "0";
            ConnectionToDB.objCmd.Parameters.Add("swid", Oracle.ManagedDataAccess.Client.OracleDbType.Varchar2, 2000).Direction   = ParameterDirection.Output;
            ConnectionToDB.objCmd.Parameters.Add("Result", Oracle.ManagedDataAccess.Client.OracleDbType.Varchar2, 2000).Direction = ParameterDirection.Output;
            //ConnectionToDB.objCmd.Parameters.Add("xml_journal_header", Oracle.ManagedDataAccess.Client.OracleDbType.XmlType).Value = strHeader;
            //ConnectionToDB.objCmd.Parameters.Add("xml_journal_details", Oracle.ManagedDataAccess.Client.OracleDbType.XmlType).Value = strDetails.Replace("DocumentElement", "DocumentElement".ToLower());
            //ConnectionToDB.objCmd.Parameters.Add("sqlStat", Oracle.ManagedDataAccess.Client.OracleDbType.Varchar2).Value = "";
            //ConnectionToDB.objCmd.Parameters.Add("strHash", Oracle.ManagedDataAccess.Client.OracleDbType.Varchar2).Value = "";
            //ConnectionToDB.objCmd.Parameters.Add("icheck", Oracle.ManagedDataAccess.Client.OracleDbType.Int16).Value = 1;
            //ConnectionToDB.objCmd.Parameters.Add("swid", Oracle.ManagedDataAccess.Client.OracleDbType.Varchar2, 2000).Direction = ParameterDirection.Output;
            //ConnectionToDB.objCmd.Parameters.Add("Result", Oracle.ManagedDataAccess.Client.OracleDbType.Varchar2, 2000).Direction = ParameterDirection.Output;

            string strResult = cnn.ExecutePro("AccountsPack.journal_inser_update", "Result");

            strJournalId = ConnectionToDB.objCmd.Parameters["swid"].Value.ToString();
            if (strResult.ToUpper() != "SUCCEED")
            {
                cnn.glb_RollbackTransaction();
                glb_function.MsgBox("حدث خطأ اثناء عملية الحفظ");
                return;
            }



            if (nmbTotalExp.Value > 0)
            {
                for (int i = 0; i < dgExpenss.Rows.Count; i++)
                {
                    if (dgExpenss[clmSelectedExpCkb.Index, i].Value.ToString() == "True")
                    {
                        icheck = cnn.TranDataToDB("insert into PROCUREMENT_EXPENSES values((select nvl(max(swid),0)+1 from PROCUREMENT_EXPENSES),sysdate," + glb_function.glb_strUserId + ",'فعال','" +
                                                  "وارد" + "'," + strImportId + "," + ("null") +
                                                  "," + dgExpenss[clmExpExpenssItemId.Index, i].Value.ToString() + "," + dgExpenss[clmExpValue.Index, i].Value.ToString() + "," +
                                                  "" + strJournalId + ",'" +
                                                  "مصاريف داخلية لفاتورة رقم:" + txtBILL_NUMBER.Text + "','" +
                                                  "" + "','" +
                                                  "نعم" + "'," + dgExpenss[clmExpValue.Index, i].Value.ToString() + ",'" + lstCURRENCY_ID.SelectedValue.ToString() + "','" + lstCURRENCY_ID.SelectedValue.ToString() + "')");

                        if (icheck <= 0)
                        {
                            cnn.glb_RollbackTransaction();
                            glb_function.MsgBox("حدث خطأ عند عملية الحفظ");
                            return;
                        }
                    }
                }
            }

            if (nmbInternalExp.Value > 0)
            {
                DataTable dtInvoiceDetail = cnn.GetDataTable("select swid, " +
                                                             " decode(d.quantity, 0, 0, (((d.quantity * d.price) / (select sum(s.quantity * s.price) from purchases_bill_details s where s.header_id = " + txtSwid.Text + ") * 100) * " + nmbInternalExp.Value.ToString() + " / 100)/ d.quantity) internal_exp" +
                                                             " from purchases_bill_details d " +
                                                             " where d.header_id =  " + txtSwid.Text);

                for (int i = 0; i < dtInvoiceDetail.Rows.Count; i++)
                {
                    icheck = cnn.TranDataToDB("update purchases_bill_details set internal_exp=" + dtInvoiceDetail.Rows[i]["internal_exp"].ToString() + " where swid=" + dtInvoiceDetail.Rows[i]["swid"].ToString());

                    if (icheck <= 0)
                    {
                        cnn.glb_RollbackTransaction();
                        glb_function.MsgBox("حدث خطأ عند عملية الحفظ");
                        return;
                    }
                }
            }

            //Get stock exchange value and decimal
            decimal   dMainValue = Math.Round(nmbTotalWithExp.Value * nmbCURRENCY_EXCHANGE.Value, glb_function.glbMainDecimalPoint);
            DataTable dtcurr     = cnn.GetDataTable("select c.swid , c.curr_name,e.curr_price,CURR_SMPL,e.CURR_MIN,e.CURR_MAX,c.CURR_DECIMAL from currency c,currency_exchange e " +
                                                    " where e.curr_id = c.swid and c.swid = (select swid from currency sc where sc.is_stock_curr=1) " +
                                                    " and e.swid = (select max(x.swid) from currency_exchange x where x.curr_id = c.swid)  ");


            decimal dStockExchangeRate = Convert.ToDecimal(dtcurr.Rows[0]["curr_price"].ToString());


            nmbTotalInvoiceInStockCurr.Value = (nmbTotalInvoiceInMainCurr.Value / dStockExchangeRate);

            //*******************************


            icheck = cnn.TranDataToDB("update  purchases_bill set stat='مقيد' ,TOTAL_VALUE_IN_STOCK_CURR =" + nmbTotalInvoiceInStockCurr.Value.ToString() + ",TOTAL_VALUE_IN_BILL_CURR=" + nmbTotalInvoiceInInvoiceCurr.Value.ToString() + ",TOTAL_VALUE_IN_MAIN_CURR=" + nmbTotalInvoiceInMainCurr.Value.ToString() + "  where swid=" + txtSwid.Text + "");
            if (icheck <= 0)
            {
                cnn.glb_RollbackTransaction();
                glb_function.MsgBox("حدث خطأ عند عملية الحفظ");
                return;
            }


            cnn.glb_commitTransaction();
            glb_function.MsgBox("تمت عملية الحفظ بنجاح");
        }
Exemple #3
0
        private void btnAccept_Click(object sender, EventArgs e)
        {
            if (dgvItems.Rows.Count <= 0)
            {
                glb_function.MsgBox("الرجاء ادخال صنف واحد على الاقل");
                return;
            }
            string         strStat         = "";
            string         strHash         = "";
            ConnectionToDB cnn             = new ConnectionToDB();
            DataTable      dtBigningVocher = cnn.GetDataTable("select swid,stat from journal_header h " +
                                                              "where h.voch_type = 'قيد افتتاحي'");

            if (dtBigningVocher == null || dtBigningVocher.Rows.Count <= 0)
            {
                //create new bigining vocher

                SaveUpdateJournal();
                ConnectionToDB.objCmd = new Oracle.ManagedDataAccess.Client.OracleCommand();
                ConnectionToDB.objCmd.Parameters.Add("xml_journal_header", Oracle.ManagedDataAccess.Client.OracleDbType.XmlType).Value  = strHeader;
                ConnectionToDB.objCmd.Parameters.Add("xml_journal_details", Oracle.ManagedDataAccess.Client.OracleDbType.XmlType).Value = strDetails.Replace("DocumentElement", "DocumentElement".ToLower());
                ConnectionToDB.objCmd.Parameters.Add("sqlStat", Oracle.ManagedDataAccess.Client.OracleDbType.Varchar2).Value            = strStat;
                ConnectionToDB.objCmd.Parameters.Add("strHash", Oracle.ManagedDataAccess.Client.OracleDbType.Varchar2).Value            = strHash;
                ConnectionToDB.objCmd.Parameters.Add("icheck", Oracle.ManagedDataAccess.Client.OracleDbType.Int16).Value              = 0;
                ConnectionToDB.objCmd.Parameters.Add("swid", Oracle.ManagedDataAccess.Client.OracleDbType.Varchar2, 2000).Direction   = ParameterDirection.Output;
                ConnectionToDB.objCmd.Parameters.Add("Result", Oracle.ManagedDataAccess.Client.OracleDbType.Varchar2, 2000).Direction = ParameterDirection.Output;
                string strResult = cnn.ExecutePro("AccountsPack.journal_inser_update", "Result");
                strJournalSWid = ConnectionToDB.objCmd.Parameters["swid"].Value.ToString();
                if (strResult.ToUpper() == "SUCCEED")
                {
                }

                else
                {
                    cnn.glb_RollbackTransaction();
                    glb_function.MsgBox("حدث خطأ اثناء تنفيذ العملية" + "\n" + strResult);
                    return;
                }
            }
            else
            {
                if (dtBigningVocher.Rows[0]["stat"].ToString() != "فعال")
                {
                    glb_function.MsgBox("لايمكن اضافة مخزون افتتاحي " + "\n" + "تم اعتماد القيد الافتتاحي");
                    return;
                }
                else
                {
                    //create data detail
                    SaveUpdateJournal();
                    ConnectionToDB.objCmd = new Oracle.ManagedDataAccess.Client.OracleCommand();
                    ConnectionToDB.objCmd.Parameters.Add("xml_journal_header", Oracle.ManagedDataAccess.Client.OracleDbType.XmlType).Value  = strHeader;
                    ConnectionToDB.objCmd.Parameters.Add("xml_journal_details", Oracle.ManagedDataAccess.Client.OracleDbType.XmlType).Value = strDetails.Replace("DocumentElement", "DocumentElement".ToLower());
                    ConnectionToDB.objCmd.Parameters.Add("sqlStat", Oracle.ManagedDataAccess.Client.OracleDbType.Varchar2).Value            = strStat;
                    ConnectionToDB.objCmd.Parameters.Add("strHash", Oracle.ManagedDataAccess.Client.OracleDbType.Varchar2).Value            = strHash;
                    ConnectionToDB.objCmd.Parameters.Add("icheck", Oracle.ManagedDataAccess.Client.OracleDbType.Int16).Value              = 0;
                    ConnectionToDB.objCmd.Parameters.Add("swid", Oracle.ManagedDataAccess.Client.OracleDbType.Varchar2, 2000).Direction   = ParameterDirection.Output;
                    ConnectionToDB.objCmd.Parameters.Add("Result", Oracle.ManagedDataAccess.Client.OracleDbType.Varchar2, 2000).Direction = ParameterDirection.Output;
                    string strResult = cnn.ExecutePro("AccountsPack.journal_inser_update", "Result");
                    strJournalSWid = ConnectionToDB.objCmd.Parameters["swid"].Value.ToString();
                    if (strResult.ToUpper() == "SUCCEED")
                    {
                    }

                    else
                    {
                        cnn.glb_RollbackTransaction();
                        glb_function.MsgBox("حدث خطأ اثناء تنفيذ العملية" + "\n" + strResult);
                        return;
                    }
                }
            }

            //create inventory move data
        }