پرش به محتوای اصلی

مستندات المان (نام سمت سازمانی)

مستندات المان

شرح صورت مسئله

اگر در فرآیندی برای مثال نام درخواست‌کننده از نوع سمت سازمانی باشد و نیاز باشد بر حسب این نام در آرشیو فعالیت‌ها امکان جستجو باشد، نیاز است به این صورت عمل کنیم:

در فعالیت کاربر (UserTask) که در فرم مربوط به آن فیلد نام از نوع سمت سازمانی وجود دارد، در بخش کدنویسی قبل از ساخت این فعالیت، کد زیر را می‌نویسیم و سپس در بخش پارامترهای خروجی فعالیت کاربری(UserTask) که در فرم مربوط به آن فیلد سمت سازمانی موردنظر وجود دارد یک متغیر از نوع رشته تعریف می‌کنیم (در اینجا Starter).

در ادامه در بخش مستندات المان فعالیت‌های کاربر(UserTask) بعدی نام این متغیر را درون براکت تعریف می‌کنیم  ([Starter]).

مستندات المان

 

مستندات المان ثبت اطلاعات

 

مستندات المان تایید اطلاعات

using System;

using System.Data;

using System.Data.SqlClient;

using Chargoon.Didgah.BPMS.CommonApi;

namespace Chargoon.Didgah.BPMS.Runtime

{

    public class ScriptUserTask : IScriptUserTask

    {

        public IExecution Execution { get; set; }

        public void Execute()

        {

// تعریف متغییر starter  از جنس رشته تا مقداردهی شود.//

 string starter =””;

// اتصال به دیتا بیس.   BPMSConnection نام رشته اتصال میباشد.//

SqlConnection conn = new SqlConnection(Execution.GetConnectionString(“BPMSConnection”));

using ( SqlCommand cmd = new SqlCommand()) {

cmd.Connection = conn;

cmd.CommandType =CommandType.Text;

// کوئری SQL که در آن نام سمت سازمانی شخص را با استفاده از متغییر  @StaffID فرد مورد نظر بدست میاوریم. //

 cmd.CommandText =@”SELECT  P.[DisplayName]

FROM Didgah_Common.dbo.com_persons AS P

LEFT JOIN Didgah_Common.dbo.com_Users AS U   ON P.Guid = U.personGuid

LEFT JOIN Didgah_Common.dbo.com_StaffUsers AS SU  ON U.Id = SU.UserId

LEFT JOIN Didgah_Common.dbo.com_Staff AS S  ON SU.StaffId = S.Id

WHERE S.id =  @StaffId ” ;

//متغییر @StaffID را در این بخش مقداردهی میکنیم. برای مثال در این بخش ___StarterStaffId  که مقدار   StaffIdفرد شروع کننده میباشد را درون این متغییر میریزیم.//

cmd.Parameters.AddWithValue(“@StaffId”,Execution.IntegerValue(“___StarterStaffId”));

conn.Open();

starter= cmd.ExecuteScalar().ToString();

conn.Close();

// مقدار دهی به فیلد Starter

 Execution.SetVariable(“Starter”, starter );

            }

        }

    }

}


[ratemypost]