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

واحد درخواست‌کننده

واحد درخواست‌کننده

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

نمایش اطلاعات فرد روی فرم:

فرض کنید در یک فرآیند نیاز است که روی فرم یک فعالیت کاربر (UserTask) نام واحد سازمانی یک فرد را نمایش دهیم.

با استفاده از کد زیر درون یک فعالیت-کدنویسی(ScriptTask) و همچنین نام فیلدی را که نام واحد سازمانی را نشان می‌دهد درون بخش پارامترهای خروجی فعالیت کدنویسی (ScriptTask) و درون بخش پارامترهای ورودی فعالیت کاربر(UserTask) بعدی تعریف کنیم. در اینجا این فیلد  ApplicantUnit است.

واحد درخواست‌کننده

 

ثبت اطلاعات ورودی فعالیت کاربر

 

using System;

using System.Data;

using System.Data.SqlClient;

using Chargoon.Didgah.BPMS.CommonApi;

namespace Chargoon.Didgah.BPMS.Runtime

{

public class ScriptTask : IScriptTask

{

public IExecution Execution { get; set; }

public void Execute()

{

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

string UnitName = “”;

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

SqlConnection sqlConnection = new SqlConnection(Execution.GetConnectionString(“BPMS”));

using (SqlCommand SqlCommand1 = new SqlCommand())

{

SqlCommand1.Connection = sqlConnection;

SqlCommand1.CommandType = CommandType.Text;

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

SqlCommand1.CommandText = @”SELECT dep.[Title]

FROM Didgah_Common.dbo.com_Departments as dep

INNER JOIN Didgah_Common.dbo.com_Staff as staff

ON dep.[id] = staff.[DepartmentId]

where staff.Id = @StaffID”;

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

StaffIdفردشروع کننده میباشد را درون این متغییر میریزیم.//

SqlCommand1.Parameters.AddWithValue(“@StaffID”,

Execution.IntegerValue(“___StarterStaffId”));

sqlConnection.Open();

SqlDataReader reader = SqlCommand1.ExecuteReader();

while (reader.Read())

{

// خروجی کوئری بالا که نام واحد سازمانی فرد شروع کننده میباشد را درون متغییر UnitNameمیریزیم.//

UnitName = reader[0].ToString();

}

sqlConnection.Close();

// متغییر UnitName را درون فیلدی که روی فرم هست و قرار است  نام واحد درخواست دهنده(ApplicantUnit) را نمایش دهد میریزیم.//

Execution.SetVariable(“ApplicantUnit”,UnitName);

}

}

}


[ratemypost]