Beispiel #1
0
        // сброс/установка полей ввода/вывода
        private void SetParFields(DocPars xDP)
        {
            int
                n = xDP.nTypD;

            DocPars.tKTyp.Text = (n == AppC.EMPTY_INT) ? "" : xDP.nTypD.ToString();
            DocPars.tNTyp.Text = DocPars.TypName(ref n);
            xDP.sTypD          = DocPars.tNTyp.Text;

            //tSm_p.Text = xDP.sSmena;
            tDateD_p.Text = DateTime.Now.ToString("dd.MM.yy");
            if (xDP.dDatDoc != DateTime.MinValue)
            {
                tDateD_p.Text = xDP.dDatDoc.ToString("dd.MM.yy");
            }
            tKPost_p.Text = "";
            tNPost_p.Text = "";
            if (xDP.nPost != AppC.EMPTY_INT)
            {
                tKPost_p.Text = xDP.nPost.ToString();
                tNPost_p.Text = xDP.nPost.ToString();
            }

            tNom_p.Text = xDP.sNomDoc;
        }
Beispiel #2
0
        // заполнение строки таблицы документов
        public bool UpdateDocRec(DataRow dr, CurDoc xD)
        {
            bool    ret = true;
            DocPars x   = xD.xDocP;

            try
            {
                if (x.nTypD != AppC.EMPTY_INT)
                {
                    dr["TD"] = x.nTypD;
                }
                else
                {
                    dr["TD"] = System.DBNull.Value;
                }

                if (x.dDatDoc != DateTime.MinValue)
                {
                    dr["DT"] = x.dDatDoc.ToString("yyyyMMdd");
                }
                else
                {
                    dr["DT"] = System.DBNull.Value;
                }
                if (x.sNomDoc != "")
                {
                    dr["SYSN"] = int.Parse(x.sNomDoc);
                }
                else
                {
                    dr["SYSN"] = System.DBNull.Value;
                }

                if (x.nPost != AppC.EMPTY_INT)
                {
                    dr["KPP1"] = x.nPost;
                }
                else
                {
                    dr["KPP1"] = System.DBNull.Value;
                }

                Encoding enc866 = Encoding.GetEncoding(866);
                dr["BIN2D"]   = enc866.GetString(xD.From2D, 0, xD.nFull2D);
                dr["HEAD2D"]  = xD.nHead2D;
                dr["FULL2D"]  = xD.nFull2D;
                dr["IDSER2D"] = xD.nIDSer;

                dr["PP2_NAME"] = "2D-данные";
            }
            catch
            {
                ret = false;
            }
            return(ret);
        }
Beispiel #3
0
        // загрузка одной таблицы
//        private void Read1NSI(TableDef td, int nReg)
//        {
//            int tc1, nE = 0;
//            string sPath = "";
//            object dg = null;

//            td.sDTStat = "";
//            if (  ((td.nType & TBLTYPE.NSI) == TBLTYPE.NSI) &&
//                ((td.nType & TBLTYPE.LOAD) == TBLTYPE.LOAD) || (nReg == LOAD_ANY))   // НСИ загружаемое
//                {
//                    if ((td.nState == DT_STATE_INIT) || (nReg == LOAD_ANY))
//                    {
//                        if (td.dg != null)
//                        {
//                            dg = td.dg.DataSource;
//                            td.dg.DataSource = null;
//                        }

//                        td.nErr = 0;
//                        tc1 = Environment.TickCount;
//                        try
//                        {
//                            sPath = sPathNSI + td.sXML;
//                            td.dt.BeginLoadData();
//                            nE = 1;
//                            td.dt.Clear();
//                            nE = 2;
//                            td.dt.ReadXml(sPath);
//                            nE = 3;
//                            td.dt.EndLoadData();
//                            td.nState = DT_STATE_READ;
//                        }
//                        catch
//                        {
//                            td.nErr = nE;
//                            td.nState = DT_STATE_READ_ERR;
//                        }

//                        td.sDTStat = ServClass.TimeDiff(tc1, Environment.TickCount);
///*
//                        if (i == I_MC)
//                            CreateKrEAN(td.dt);
//*/
//                        if (dg != null)
//                            td.dg.DataSource = dg;
//                        dg = null;
//                    }
//                }

//        }


        // возвращает из справочника заданное поле
        //internal RezSrch GetNameSPR(string iT, object[] xSearch, string sFieldName)
        //{
        //    RezSrch zRet = new RezSrch("-???-");
        //    DataRow dr = null;
        //    try
        //    {
        //        dr = DT[iT].dt.Rows.Find(xSearch);
        //        zRet.sName = dr[sFieldName].ToString();
        //        zRet.bFind = true;
        //    }
        //    catch
        //    {
        //    }
        //    return (zRet);
        //}


        // чтение текущей строки в объект панели документов
        public bool InitCurDoc(CurDoc xD)
        {
            bool ret = false;

            if (xD.drCurRow != null)
            {
                try
                {
                    //int i = xD.nCurRec;
                    DocPars x = xD.xDocP;

                    //DataRow dr = DT[NSI.I_DOCOUT].dt.Rows[i];
                    DataRow dr = xD.drCurRow;

                    xD.nId     = (int)((dr["ID"] == System.DBNull.Value) ? AppC.EMPTY_INT : dr["ID"]);
                    xD.nDocSrc = (int)((dr["SOURCE"] == System.DBNull.Value) ? AppC.EMPTY_INT : dr["SOURCE"]);


                    x.nTypD   = (int)((dr["TD"] == System.DBNull.Value) ? AppC.EMPTY_INT : dr["TD"]);
                    x.nPost   = (long)((dr["KPP1"] == System.DBNull.Value) ? AppC.EMPTY_INT : dr["KPP1"]);
                    x.sNomDoc = ((dr["SYSN"] == System.DBNull.Value) ? "" : dr["SYSN"].ToString());

/*
 *                  x.sSmena = ((dr["KSMEN"] == System.DBNull.Value) ? "" : dr["KSMEN"].ToString());
 *                  x.nUch = (int)((dr["NUCH"] == System.DBNull.Value) ? AppC.EMPTY_INT : dr["NUCH"]);
 *                  x.nEks = (int)((dr["KEKS"] == System.DBNull.Value) ? AppC.EMPTY_INT : dr["KEKS"]);
 */
                    try
                    {
                        x.dDatDoc = DateTime.ParseExact(dr["DT"].ToString(), "yyyyMMdd", null);
                    }
                    catch
                    {
                        x.dDatDoc = DateTime.MinValue;
                    }
                    //xD.nStrokZ = xD.drCurRow.GetChildRows(NSI.REL2ZVK).Length;

                    Encoding enc866 = Encoding.GetEncoding(866);
                    xD.nHead2D = (int)dr["HEAD2D"];
                    xD.nFull2D = (int)dr["FULL2D"];
                    xD.nIDSer  = (long)dr["IDSER2D"];
                    xD.From2D  = enc866.GetBytes((string)dr["BIN2D"]);

                    ret = true;
                }
                catch
                {
                }
            }
            return(ret);
        }
Beispiel #4
0
        public CurDoc(int nReg)
        {
            switch (nReg)
            {
            case AppC.F_ADD_REC:
                // создание нового документа
                //nCurRec = AppC.EMPTY_INT;
                nId = AppC.EMPTY_INT;
                break;

            default:
                break;
            }

            //nDt = NSI.I_DOCOUT;
            xDocP = new DocPars(nReg);

            bSpecCond = true;
            nStrokZ   = 0;
        }
Beispiel #5
0
        // изменение типа, вывод нименования
        private void tKT_pTextChanged(object sender, EventArgs e)
        {
            if (bWorkWithDocPars == true)
            {// при просмотре не проверяется
                int    nTD = AppC.EMPTY_INT;
                string s   = "";

                try
                {
                    nTD = int.Parse(tKT_p.Text);
                }
                catch {}

                s         = DocPars.TypName(ref nTD);
                xDP.nTypD = nTD;

                tKT_p.SelectAll();  // если вводим не более 1 символа
                tNT_p.Text = s;
            }
        }
Beispiel #6
0
        // вход в режим ввода/корректировки параметров
        public void EditPars(int nReg, DocPars x, CTRL1ST FirstEd, AppC.VerifyEditFields dgVer, EditParsOver dgEnd)
        {
            xDP = x;
            if (x != null)
            {
                bQuitEdPars      = false;
                nCurFunc         = nReg;
                bWorkWithDocPars = true;
                //ServClass.dgVerEd = new VerifyEditFields(dgVer);
                dgOver = new EditParsOver(dgEnd);
                SetParFields(xDP);
                //EnableDocF(x.nTypD, 1);
                SetEditMode(true);

                CreateEdArrPar(FirstEd, dgVer);

                oldKeyH    = ehCurrFunc;
                ehCurrFunc = new CurrFuncKeyHandler(PPars_KeyDown);

//                WhereFocus(FirstEd);
            }
        }
Beispiel #7
0
 public CurUpLoad(int nRegUpl)
 {
     xLP      = new DocPars(AppC.F_UPLD_DOC);
     ilUpLoad = new IntRegsAvail(nRegUpl);
 }
Beispiel #8
0
 public CurLoad(int nRegLoad)
 {
     xLP    = new DocPars(AppC.F_LOAD_DOC);
     ilLoad = new IntRegsAvail(nRegLoad);
 }
Beispiel #9
0
        // проверка параметров перед записью
        private bool VerifyPars(DocPars xP, int nF, ref object xErr)
        {
            bool ret = false;

            //string sE = "";

            ////if ((xP.nTypD != AppC.EMPTY_INT) && (xP.dDatDoc != DateTime.MinValue))
            //    // для всех типов документов
            //if (xP.nTypD != AppC.EMPTY_INT)
            //{// смотрим дальше
            //    if (nF == AppC.F_LOAD_DOC)
            //    {
            //        if (xP.sNomDoc != "")
            //            ret = true;
            //        else
            //        {
            //            sE = "№ документа не указан!";
            //            xErr = tNom_p;
            //        }
            //    }
            //    else
            //    {
            //        if (xP.nSklad != AppC.EMPTY_INT)
            //        {// склад имеется

            //            switch (nF)
            //            {
            //                case AppC.F_ADD_REC:
            //                case AppC.F_CHG_REC:
            //                    if (xP.nTypD != AppC.TYPD_INV)
            //                    {// если не инвентаризация - проверяем дальше

            //                        switch (xP.nTypD)
            //                        {
            //                            case AppC.TYPD_VPER:        // внутреннее перемещение
            //                                if (xP.nPol != AppC.EMPTY_INT)
            //                                {
            //                                    if (xP.sNomDoc != "")
            //                                        ret = true;
            //                                    else
            //                                    {
            //                                        sE = "№ документа не указан!";
            //                                        xErr = tNom_p;
            //                                    }
            //                                }
            //                                else
            //                                {
            //                                    sE = "Получатель не указан!";
            //                                    xErr = DocPars.tKPost;
            //                                }
            //                                break;
            //                        }
            //                    }
            //                    else
            //                        ret = true;
            //                    break;
            //                case AppC.F_UPLD_DOC:
            //                case AppC.F_LOAD_DOC:
            //                    if (xP.sSmena != "")
            //                        ret = true;
            //                    else
            //                    {
            //                        sE = "Смена не указана!";
            //                        xErr = null;
            //                    }
            //                    break;

            //            }
            //        }
            //        else
            //        {
            //            sE = "Склад не указан!";
            //            xErr = DocPars.tKSkl;
            //        }
            //    }
            //}
            //else
            //{
            //    sE = "Ошибочный тип!";
            //    xErr = DocPars.tDate;
            //}

            //if (ret == false)
            //{
            //    ServClass.ErrorMsg(sE);
            //}
            return(ret);
        }