Exemple #1
0
        private CSOMaster GetToSOFormData()
        {
            CSOMaster oSOMaster = new CSOMaster();

            oSOMaster.SOMstr_OID           = string.Empty;
            oSOMaster.SOMstr_Branch        = currentBranch.CompBrn_Code;
            oSOMaster.SOMstr_Code          = string.Empty;
            oSOMaster.SOMstr_Date          = DateTime.Now.Date;
            oSOMaster.SOMstr_By            = string.Empty;
            oSOMaster.SOMstr_CustomerID    = string.Empty;
            oSOMaster.SOMstr_TotalAmt      = float.Parse(txtTotalAmount.Text.Trim());
            oSOMaster.SOMstr_DiscAmt       = float.Parse(txtDiscountAmount.Text.Trim());
            oSOMaster.SOMstr_NetAmt        = float.Parse(this.txtNetPay.Text.Trim());
            oSOMaster.SOMstr_FinalDest     = string.Empty;
            oSOMaster.SOMstr_TransportType = string.Empty;
            oSOMaster.SOMstr_TransportNo   = string.Empty;
            oSOMaster.SOMstr_VatClnNo      = string.Empty;
            oSOMaster.SOMstr_VatDate       = DateTime.Now.Date;
            oSOMaster.SOMstr_PricingDate   = DateTime.Now.Date;
            oSOMaster.Creator      = currentUser.User_OID;
            oSOMaster.CreationDate = DateTime.Now.Date;
            oSOMaster.UpdateBy     = currentUser.User_OID;
            oSOMaster.UpdateDate   = DateTime.Now.Date;
            oSOMaster.IsActive     = "Y";
            oSOMaster.Remarks      = string.Empty;
            if (rdCard.Checked)
            {
                oSOMaster.PaymentType = "Card";
                oSOMaster.CardType    = ddlCardType.SelectedItem.ToString();
            }
            else
            {
                oSOMaster.PaymentType = "Cash";
                oSOMaster.CardType    = "";
            }
            if (ddlSalesExecutive.SelectedIndex != -1)
            {
                oSOMaster.SalesMan = ddlSalesExecutive.SelectedValue.ToString();
            }
            for (int i = 0; i < this.dgvSaleItemList.Rows.Count - 1; i++)
            {
                DataGridViewRow dgvr = this.dgvSaleItemList.Rows[i];

                if (float.Parse(dgvr.Cells["chQty"].Value.ToString()) > 0)
                {
                    CSODetails oSODetails = new CSODetails();

                    oSODetails.SODet_OID       = string.Empty;
                    oSODetails.SODet_Branch    = currentBranch.CompBrn_Code;
                    oSODetails.SODet_MStrOID   = string.Empty;
                    oSODetails.SODet_ItemSLNum = dgvr.Cells["chSLNum"].Value.ToString();
                    oSODetails.SODet_ItemOID   = dgvr.Cells["chItemOId"].Value.ToString();
                    oSODetails.SODet_ItemName  = dgvr.Cells["chItemName"].Value.ToString();
                    oSODetails.SODet_QTY       = float.Parse(dgvr.Cells["chQty"].Value.ToString());
                    oSODetails.SODet_UOM       = dgvr.Cells["chUOMOID"].Value.ToString();
                    oSODetails.SODet_Price     = float.Parse(dgvr.Cells["chRate"].Value.ToString());
                    oSODetails.SODet_PPrice    = float.Parse(dgvr.Cells["cPPrice"].Value.ToString());
                    oSODetails.SODet_Currency  = dgvr.Cells["chCurrencyOID"].Value.ToString();
                    oSODetails.SODet_Amount    = float.Parse(dgvr.Cells["chValue"].Value.ToString());
                    oSODetails.SODet_Discount  = float.Parse(dgvr.Cells["chDiscountAmount"].Value.ToString());
                    oSODetails.SODet_VATValue  = float.Parse(dgvr.Cells["chVatValue"].Value.ToString());

                    oSODetails.SODet_SDValue   = 0.00f;
                    oSODetails.SODet_SDAmount  = 0.00f;
                    oSODetails.SODet_VATAmount = 0.00f;
                    oSODetails.SODet_NetAmount = 0.00f;

                    oSODetails.SODet_BranchOID = currentBranch.CompBrn_OId;
                    // Advance Start
                    if (!defaultUserMode)
                    {
                        oSODetails.SODet_MStrOID = "SOMstrXX" + currentBranch.CompBrn_Code.Trim() + (("XXXXXX").Substring(0, 6 - currentBranch.CompBrn_Code.Trim().Length)) + "00" + VatClnNo;
                    }
                    // Advance End
                    oSOMaster.SOMstr_DetailsList.Add(oSODetails);
                }
            }

            // Advance Start
            if (!defaultUserMode)
            {
                oSOMaster.SOMstr_OID = "SOMstrXX" + currentBranch.CompBrn_Code.Trim() + (("XXXXXX").Substring(0, 6 - currentBranch.CompBrn_Code.Trim().Length)) + "00" + VatClnNo;

                string sTemp = currentBranch.CompBrn_Code.Trim() + (("XXXXXX").Substring(0, 6 - currentBranch.CompBrn_Code.Trim().Length));
                sTemp += DateTime.Now.ToString("yyddMM");
                sTemp += VatClnNo.Substring(4, 4);
                oSOMaster.SOMstr_Code = sTemp;

                oSOMaster.SOMstr_VatClnNo = VatClnNo;

                VatClnNo = ("00000001").Substring(0, 8 - (long.Parse(VatClnNo) + 1).ToString().Length) + (long.Parse(VatClnNo) + 1).ToString();
            }
            // Advance End

            return(oSOMaster);
        }
Exemple #2
0
        private static List <DataTable> SplitTable(DataTable table, int batchSize)
        {
            List <DataTable> dts = new List <DataTable>();

            DataColumn[] itemcols = table.Columns.Cast <DataColumn>()
                                    .Where(c => c.ColumnName.StartsWith("SOM"))
                                    .Select(c => new DataColumn(c.ColumnName, c.DataType))
                                    .ToArray();
            DataColumn[] uoCols = table.Columns.Cast <DataColumn>()
                                  .Where(c => c.ColumnName.StartsWith("SOD"))
                                  .Select(c => new DataColumn(c.ColumnName, c.DataType))
                                  .ToArray();


            var t_SOMstr = new DataTable();

            t_SOMstr.Columns.AddRange(itemcols);

            var t_SODet = new DataTable();

            t_SODet.Columns.AddRange(uoCols);



            foreach (DataRow row in table.Rows)
            {
                DataRow aRow = t_SOMstr.Rows.Add();
                DataRow bRow = t_SODet.Rows.Add();


                foreach (DataColumn aCol in itemcols)
                {
                    aRow.SetField(aCol, row[aCol.ColumnName]);
                }
                foreach (DataColumn bCol in uoCols)
                {
                    bRow.SetField(bCol, row[bCol.ColumnName]);
                }
            }
            // DataTable dt = new DataTable();
            List <CSOMaster> items = t_SOMstr.DataTableToList <CSOMaster>();

            string TobeDistinct = "SOMstr_OID";
            // DataTable dtDistinct = GetDistinctRecords(t_SOMstr, TobeDistinct);

            //Following function will return Distinct records for Name, City and State column.
            var distinctList = from p in items
                               group p by new { p.SOMstr_Code } //or group by new {p.ID, p.Name, p.Whatever}
            into mygroup
            select mygroup.FirstOrDefault();

            foreach (var item in items)
            {
                CSOMaster oitem   = item;
                CSOBO     oitembo = new CSOBO();
                CResult   oresult = new CResult();
                oitem.CreationDate = Convert.ToDateTime(t_SOMstr.Rows[0]["SOMstr_CreationDate"].ToString());
                oitem.Creator      = t_SOMstr.Rows[0]["SOMstr_Creator"].ToString();
                oitem.UpdateBy     = t_SOMstr.Rows[0]["SOMstr_UpdateBy"].ToString();
                oitem.UpdateDate   = Convert.ToDateTime(t_SOMstr.Rows[0]["SOMstr_UpdateDate"].ToString());
                oitem.IsActive     = t_SOMstr.Rows[0]["SOMstr_IsActive"].ToString();
                oitem.Remarks      = t_SOMstr.Rows[0]["SOMstr_Remarks"].ToString();

                List <CSODetails> umos = t_SODet.DataTableToList <CSODetails>();
                foreach (var sodetails in umos)
                {
                    CSODetails ouom = sodetails;
                    oitem.SOMstr_DetailsList.Add(ouom);
                    //oresult = oitembo.CreateImport(ouom);
                }
                oresult = oitembo.CreateSalesImport(oitem);
            }
            // dts.Add(t_Item);
            //dts.Add(t_UOM);



            return(dts);
        }