Exemplo n.º 1
0
        // смена стиля Grid-документы
        //private void ChgDocGridStyle(int nReg)
        //{
        //    //MessageBox.Show("Changing...");
        //    xNSI.ChgGridStyle(NSI.NS_DOCOUT, NSI.GDOC_NEXT);
        //}


        // обработчик смены ячейки
        private void dgDoc_CurrentCellChanged(object sender, EventArgs e)
        {
            DataGrid dg       = (DataGrid)sender;
            DataView dvMaster = ((DataTable)dg.DataSource).DefaultView;
            DataRow  dr       = dvMaster[dg.CurrentRowIndex].Row;

            if (xCDoc.drCurRow != dr)
            {// сменилась строка
                xCDoc          = new CurDoc(xSm);
                xCDoc.drCurRow = dr;
                xNSI.InitCurDoc(xCDoc, xSm);
                SetParFields(xCDoc.xDocP);
                if ((xSm.FilterTTN & NSI.FILTRDET.SSCC) > 0)
                {
                    xSm.FilterTTN = NSI.FILTRDET.UNFILTERED;
                    xNSI.DT[NSI.BD_DOUTD].sTFilt = "";
                }
                //if ((int)dr["TYPOP"] == AppC.TYPOP_KMPL)
                //{
                //    xNSI.ChgGridStyle(NSI.BD_DIND, 1);
                //}
                //else
                //{
                //    xNSI.ChgGridStyle(NSI.BD_DIND, 0);
                //}
            }
        }
Exemplo n.º 2
0
        // добавление в список SSCC отмаркированного поддона
        public DataRow AddSSCC2SSCCTable(string sSSCC, int nPP, CurDoc xCDoc, bool bAddNew)
        {
            DataRow
                ret = null;
            int
                nKey = (int)xCDoc.drCurRow["SYSN"];

            try
            {
                bAddNew = false;
                ret     = FindSCCTInSSCCList(sSSCC, nKey, ref nPP);
                if (ret == null)
                {
                    bAddNew       = true;
                    ret           = xNSI.DT[NSI.BD_SSCC].dt.NewRow();
                    ret["SYSN"]   = nKey;
                    ret["NPODDZ"] = nPP;
                    ret["SSCC"]   = sSSCC;
                    ret["STATE"]  = 1;
                }
                ret["IN_TTN"] = 1;
                if (bAddNew)
                {
                    xNSI.DT[NSI.BD_SSCC].dt.Rows.Add(ret);
                }
            }
            catch
            {
                Srv.ErrorMsg("Ошибка добавления SSCC!");
            }
            return(ret);
        }
Exemplo n.º 3
0
        // только 1-й раз призапуске программы
        private bool Only1st()
        {
            bool
                   bContinueApp = true;
            string s;
            DialogResult
                xDRslt;

            b1stEner = false;
            xNSI.ChgGridStyle(NSI.BD_DOCOUT, NSI.GDOC_INV);
            s = (xSm.sUser == AppC.SUSER)?"Admin":
                (xSm.sUser == AppC.GUEST) ? "Склад" : xSm.sUser;
            lInfDocLeft.Text = s;

            xCDoc = new CurDoc(xSm, AppC.DT_ADDNEW);
            //DataView dvMaster = ((DataTable)dgDoc.DataSource).DefaultView;
            //if (dvMaster.Count > 0)

            if (xSm.nDocs > 0)
            {// есть записи для просмотра
                RestShowDoc(false);
            }
            if (xSm.RegApp == AppC.REG_MARK)
            {
                //CheckNSIState(false);
                //DialogResult xDRslt = CallDllForm(sExeDir + "SGPF-Mark.dll", true);
                xDRslt = CallDllForm(sExeDir + "SGPF-Mark.dll", true, new object[] { this, false });
                if (xDRslt == DialogResult.Abort)
                {
                    bContinueApp = false;
                    this.Close();
                }
            }
            return(bContinueApp);
        }
Exemplo n.º 4
0
        // поиск в списке SSCC отмаркированного поддона
        public DataRow FindSCCTInProdList(string sSSCC, CurDoc xCDoc)
        {
            DataRow
                ret = null;
            string
                sRf = ((DataTable)dgDet.DataSource).DefaultView.RowFilter;

            sRf = String.Format("SYSN={0} AND SSCC='{1}' AND KRKMC={2}", xCDoc.nId, sSSCC, AppC.KRKMC_MIX);
            DataView dv = new DataView(xNSI.DT[NSI.BD_SSCC].dt, sRf, "", DataViewRowState.CurrentRows);

            if (dv.Count == 1)
            {
                ret = dv[0].Row;
            }

            return(ret);
        }
Exemplo n.º 5
0
        /// *** Функции работы с документами
        ///

        // добавление новой или изменение старой
        // nReg - требуемый режим
        private void AddOrChangeDoc(int nFunc)
        {
            CTRL1ST
                FirstC = CTRL1ST.START_EMPTY;

            if (nFunc == AppC.F_ADD_REC)
            {// вход в режим добавления новой записи
                xCDoc          = new CurDoc(xSm, AppC.DT_ADDNEW);
                tStat_Reg.Text = "Новый";
                //if (xSm.RegApp == AppC.REG_DOC)
                //    FirstC = CTRL1ST.START_EMPTY;
            }
            else
            {// вход в режим корректировки записи
                tStat_Reg.Text = "Корр-ка";
            }
            EditPars(nFunc, xCDoc.xDocP, FirstC, VerifyDoc, EditFieldsIsOver);
        }
Exemplo n.º 6
0
        // только 1-й раз призапуске программы
        private void Only1st()
        {
            string s;

            b1stEner = false;
            s        = (xSm.sUser == AppC.SUSER) ? "Admin":
                       (xSm.sUser == AppC.GUEST) ? "Кладовщик" : xSm.sUser;
            lInfDocWidLeft.Text = s;

            xCDoc = new CurDoc(xSm, AppC.DT_ADDNEW);
            //DataView dvMaster = ((DataTable)dgDoc.DataSource).DefaultView;
            //if (dvMaster.Count > 0)

            if (xSm.nDocs > 0)
            {// есть записи для просмотра
                RestShowDoc(false);
            }
        }
Exemplo n.º 7
0
        // смена стиля Grid-документы
        //private void ChgDocGridStyle(int nReg)
        //{
        //    //MessageBox.Show("Changing...");
        //    xNSI.ChgGridStyle(NSI.NS_DOCOUT, NSI.GDOC_NEXT);
        //}


        // обработчик смены ячейки


        private void dgDoc_CurrentCellChanged(object sender, EventArgs e)
        {
            DataGrid dg       = (DataGrid)sender;
            DataView dvMaster = ((DataTable)dg.DataSource).DefaultView;
            DataRow  dr       = dvMaster[dg.CurrentRowIndex].Row;

            if (xCDoc.drCurRow != dr)
            {// сменилась строка
                xCDoc          = new CurDoc(xSm);
                xCDoc.drCurRow = dr;
                xNSI.InitCurDoc(xCDoc, xSm);
                SetParFields(xCDoc.xDocP);

                DataRow[] childRows = xCDoc.drCurRow.GetChildRows(NSI.REL2ZVK);
                if (childRows.Length > 0)
                {
                    bZVKPresent = true;
                }
            }
        }
Exemplo n.º 8
0
        // добавление очередного SSCC в список SSCC
        public DataRow AddSSCC2SSCCTable(string sSSCC, int nPP, CurDoc xCDoc, int SQUs, int FromSRV, int FromTTN)
        {
            bool
                bAddNew;
            DataRow
                ret = null;
            int
                nKey = (int)xCDoc.drCurRow["SYSN"];

            try
            {
                bAddNew = false;
                ret     = FindSCCTInSSCCList(sSSCC, nKey, ref nPP);
                if (ret == null)
                {
                    bAddNew      = true;
                    ret          = xNSI.DT[NSI.BD_SSCC].dt.NewRow();
                    ret["SYSN"]  = nKey;
                    ret["SSCC"]  = sSSCC;
                    ret["MONO"]  = SQUs;
                    ret["STATE"] = 1;

                    if (nPP == 0)
                    {
                        nPP = GetMaxInRows(xNSI.DT[NSI.BD_SSCC].dt, "NPODDZ", xCDoc.DefDetFilter()) + 1;
                    }
                    ret["NPODDZ"] = nPP;
                }
                ret["IN_ZVK"] = FromSRV;
                ret["IN_TTN"] = FromTTN;
                if (bAddNew)
                {
                    xNSI.DT[NSI.BD_SSCC].dt.Rows.Add(ret);
                }
            }
            catch
            {
                Srv.ErrorMsg("Ошибка добавления SSCC!");
            }
            return(ret);
        }