コード例 #1
0
ファイル: DOG_STAGIN.cs プロジェクト: den41c/IDU-
    public static int CreateDocument(DogTable.Record dogRecord)
    {
        var undog = dogRecord.Undog;
        //var dgt = Cursor.GetFieldValue<string>("KDGT");
        var dgt = (dogRecord.Undog_pr == 0) ? dogRecord.Kdgt : DogTable.GetRecord(dogRecord.Undog_pr, new String[] { "KDGT" }).Kdgt;
        //var dogstatus = Cursor.GetFieldValue<string>("KDGD");

        //var docType = SqlClient.Main.CreateCommand("select KDMT from DOGC_ where KDGT = @KDGT and KDGD = @KDGD",
        //    new SqlParam("KDGT", dgt),
        //    new SqlParam("KDGD", dogstatus)).ExecScalar<string>();

        //var docType = SqlClient.Main.CreateCommand(@"select PROTTYPE_ from dgt wher");
        var docType = DgtTable.GetRecord(dgt, new[] { "PROTTYPE_" }).GetFieldValue <string>("PROTTYPE_").Split(',').FirstOrDefault();

        //Формирование документа
        var document = new Document();

        document.FillDocConfig(docType);
        document.ContractorCode = dogRecord.Org;
        document.ContractCode   = undog;
        document.Status         = DocStatus.Project;
        //Добавление документа в SQL
        var docRepo = new HeadersRepository();

        docRepo.Add(document);

        //Установка документа на 1ю стадию
        var dmz = new DataEditor.StartInfo("DMZ10")
        {
            TemplateId = "DMZ",
            StartMode  = new DataEditor.StartInfo.DataEditorStartMode(
                new DataEditor.StartInfo.WorkflowStartMode(WorkflowProcessMode.SetRoute)
            {
                ExitAfterCall = true
            }),
            PrimaryKeyFilter = new Dictionary <string, object>()
            {
                { "UNDOC", document.Undoc }
            },
            Editable = true
        };
        var dc = new DocumentCondition(ConditionDbType.Dmz);

        dmz.Cursors["DMZ"].CustomProperties.Add(DocumentCaller.DocumentConditionPropertyName, dc);
        DataEditor.Call(dmz);

        return(document.Undoc);
    }
コード例 #2
0
    /// <summary>
    /// Поставить документ на бизнес-процесс
    /// </summary>
    /// <param name="undoc"></param>
    void FixStageBusinessProcess(decimal undoc)
    {
        var filter2 = new SqlCmdText("DMZ.UNDOC in (@UNDOC)", new SqlParam("UNDOC", undoc)
        {
            Array = true
        });

        var filter = new SqlCmdText(undoc.ToString());

        var si2 = new DataEditor.StartInfo("DMZ10")
        {
            Editable  = true,
            StartMode = new DataEditor.StartInfo.DataEditorStartMode(new DataEditor.StartInfo.WorkflowStartMode(WorkflowProcessMode.SetRoute)
            {
                AllRecord = true, BatchMode = true
            }),
            SkipFilterDialogs = true,
            AdditionalFilter  = filter2
        };

        DataEditor.Call(si2);
    }