예제 #1
0
        public string DoSaveItemTranferInRemote(DsInventory.ITEMTRANSFERMAINRow drow,DsInventory.ITEMTRANSFERDETAILDataTable itemtransferdetail)
        {
            var dm = new DataManager();
            string retval=string.Empty;
            SqlTransaction tran = null;
            try
            {
                var cn = new SqlConnection(_syncConstr);
                cn.Open();
                tran = cn.BeginTransaction(IsolationLevel.ReadUncommitted);

                var ds = new DsInventory();
                var dtdetail = ds.ITEMTRANSFERDETAIL;
                var dt = ds.ITEMTRANSFERMAIN;

                var taPurMain = new ITEMTRANSFERMAINTableAdapter();

                var taPurDetail = new ITEMTRANSFERDETAILTableAdapter();

                taPurMain.Connection.ConnectionString = _syncConstr;

            //   taPurMain.Fill(ds.ITEMTRANSFERMAIN);

                taPurMain.FillByTranid(dt, drow.TRANID);

                // Assaign Transaction
                taPurMain.AssignConnection(cn, tran);
                taPurDetail.AssignConnection(cn, tran);
                
                var dr = dt.FindByTRANID(drow.TRANID);

                if (dr == null)
                {
                    dr = (DsInventory.ITEMTRANSFERMAINRow) dt.NewRow();
                    dr.TRANID = drow.TRANID;
                    dr.COMPANY = drow.COMPANY;
                    if (!drow.IsEDATENull())
                    dr.EDATE = drow.EDATE;
                    if (!drow.IsEUSERIDNull())
                    dr.EUSERID = drow.EUSERID;
                    dr.FRMSTOREID = drow.FRMSTOREID;
                    dr.TOSTOREID = drow.TOSTOREID;
                    dr.TRANDATE = drow.TRANDATE;
                    dr.TOTVALUE = drow.TOTVALUE;
                    dr.TOTITEMS = drow.TOTITEMS;
                    dr.HOLD = drow.HOLD;
                    dr.FRMNAME = drow.FRMNAME;
                    dr.TONAME = drow.TONAME;
                    dr.TTYPE = drow.TTYPE;
                    dr.TOCOMP = drow.TOCOMP;
                    dr.USERID = drow.USERID;
                    dr.DOWNFILENO = drow.DOWNFILENO;
                    dt.Rows.Add(dr);
                    taPurMain.Update(dt);
                    foreach (DsInventory.ITEMTRANSFERDETAILRow  ditemdetarow in itemtransferdetail)
                    {
                        var newdetrow = dtdetail.NewRow();
                        foreach (DataColumn dc in itemtransferdetail.Columns)
                        {
                            if (!dc.ReadOnly)
                            {
                                newdetrow[dc.ColumnName] = ditemdetarow[dc.ColumnName];
                            }
                        }
                        dtdetail.Rows.Add(newdetrow);
                    }
                    taPurDetail.Update(dtdetail);
                    tran.Commit();
                    retval = "1";
                }
                else
                {
                    retval = "1"; 
                }
            }
            catch (Exception ex)
            {
                if (tran != null)
                    tran.Rollback();
                retval = ex.ToString();
            }
            return retval;
        }
예제 #2
0
        public string DoSave(DsInventory.ITEMTRANSFERMAINRow drow,
            DsInventory.ITEMTRANSFERDETAILDataTable itemtransferdetail, string Stype)
        {
            var dm = new DataManager();
            string retval = "0";
            SqlTransaction tran = null;
            var isnew = false;
            try
            {
                var cn = new SqlConnection(_constr);
                cn.Open();
                tran = cn.BeginTransaction(IsolationLevel.ReadUncommitted);
                var ds = new DsInventory();
                var dt = ds.ITEMTRANSFERMAIN;
                var taItemTransMain = new ITEMTRANSFERMAINTableAdapter();
                var taItremTransDetail = new ITEMTRANSFERDETAILTableAdapter();
                var taStockMaster = new STOCKMASTERTableAdapter {Connection = {ConnectionString = _constr}};
                taItemTransMain.Connection.ConnectionString = _constr;
                taStockMaster.Fill(ds.STOCKMASTER);
                taItemTransMain.FillByTranid(dt, drow.TRANID);
                // Assaign Transaction
                taItemTransMain.AssignConnection(cn, tran);
                taItremTransDetail.AssignConnection(cn, tran);
                taStockMaster.AssignConnection(cn, tran);
                var dr = dt.FindByTRANID(drow.TRANID);

                if (dr != null)
                {
                    dr.BeginEdit();
                }
                else
                {
                    dr = (DsInventory.ITEMTRANSFERMAINRow) dt.NewRow();
                    isnew = true;
                }
                if (isnew)
                {
                    var autoid = dm.GetAutoId(3);
                    autoid++;
                    Utils.Tranid = dm.CreateFormatedAutoNo(autoid);
                    dr.TRANID = Utils.Tranid;
                    dr.COMPANY = Utils.Company;
                }
                else
                {
                    Utils.Tranid = drow.TRANID;
                    dr.EDATE = DateTime.Now;
                    dr.EUSERID = Utils.Userid;
                }
                dr.FRMSTOREID = drow.FRMSTOREID;
                dr.TOSTOREID = drow.TOSTOREID;
                dr.TRANDATE = drow.TRANDATE;
                dr.TOTVALUE = drow.TOTVALUE;
                dr.TOTITEMS = itemtransferdetail.Count;
                dr.HOLD = drow.HOLD;
                dr.FRMNAME = drow.FRMNAME;
                dr.TONAME = drow.TONAME;
                dr.TTYPE = drow.TTYPE;
                dr.TOCOMP = drow.TOCOMP;
                dr.USERID = drow.USERID;
                var taa = new DataManager();
                dr.DOWNFILENO = drow.DOWNFILENO;
                if (isnew)
                {
                    dt.Rows.Add(dr);
                    taItemTransMain.Update(dt);
                    if (dr.TTYPE == 3)
                    {
                        dr.AFILENO = Utils.Tranid; // taa.CreateFormatedAutoNo(taa.GetAutoId(5));
                        dr.FLAGFILE = true;
                    }
                }
                else
                {
                    dr.EndEdit();
                    taItemTransMain.Update(dr);
                }
                foreach (DataRow purd in itemtransferdetail.Rows)
                {
                    if ((purd.RowState != DataRowState.Deleted))
                    {
                        purd["TRANID"] = Utils.Tranid;
                        purd["TOSTORE"] = drow.TOSTOREID;
                    }
                }
                taItremTransDetail.Update(itemtransferdetail);
                if (!dr.HOLD)
                {
                    Masters.StockMaster.UpdateQtyInStockDataSet(ref cn, ref tran, itemtransferdetail, false);
                    if (dr.TTYPE == 3)
                    {
                        new Masters.StockMaster().CreateStock(ref cn, ref tran, itemtransferdetail, drow.TOSTOREID,
                            Stype, false, false);
                    }
                    dm.UpdateAutoNum(3);
                }
                tran.Commit();
                retval = "1";
            }
            catch (Exception ex)
            {
                if (tran != null)
                    tran.Rollback();
                if (isnew)
                    Utils.Tranid = string.Empty;
                retval = ex.ToString();
            }
            return retval;
        }
예제 #3
0
 public DsInventory CreateDataSetForXmlFile(string tranids)
 {
     var dsxml = new DsInventory();
     var ta = new ITEMTRANSFERMAINTableAdapter {Connection = {ConnectionString = _constr}};
     ta.FillByTranid(dsxml.ITEMTRANSFERMAIN, tranids);
     var tadet = new ITEMTRANSFERDETAILTableAdapter {Connection = {ConnectionString = _constr}};
     ;
     tadet.FillByTranid(dsxml.ITEMTRANSFERDETAIL, tranids);
     var taItems = new GetItemsForRemoteUpdateTableAdapter {Connection = {ConnectionString = _constr}};
     ;
     taItems.Fill(dsxml.GetItemsForRemoteUpdate, tranids);
     var taSuppliers = new GetSupplierForRemoteUpdateTableAdapter {Connection = {ConnectionString = _constr}};
     ;
     taSuppliers.Fill(dsxml.GetSupplierForRemoteUpdate, tranids);
     return dsxml;
 }
예제 #4
0
 public DsInventory.ITEMTRANSFERMAINDataTable GetItemTransferByid(string tranid, bool userothercomp = false,
     string concomp = "")
 {
     var ta = new ITEMTRANSFERMAINTableAdapter
     {
         Connection = {ConnectionString = userothercomp ? concomp : _constr}
     };
     var ds = new DsInventory.ITEMTRANSFERMAINDataTable();
     ta.FillByTranid(ds, tranid);
     return ds;
 }