Form-公共代码
Attachments //对应的添加、删除、查看附件内代码都在Attachments中。一般情况下可以直接调用
功能:
添加,删除,浏览附件(通常作为frame的数据源显示附件列表)
参数:
{TableName,Origrec} TableName表名,Origrec唯一标识符
返回值:无
1 function Form1_OnLoad( sender, eventArgs ) 2 { 3 form.Variables["OnlineEdit"] = false; //设置在线编辑默认为假,即不可用 4 if(lims.Len(form.formArguments) > 1) //form.formArguments[]用来获取从上个页面传过来的值,以数组形式存在 5 { 6 var isReadOnly = false; //设置只读属性,默认为false; 7 var rTable = form.formArguments[0]; //设置变量,把传递来的第一个值赋值给该变量 8 var rOrigrec= form.formArguments[1]; //设置变量,把传递来的第二个值赋值给该变量 9 var colComment: DataGridColumn = dgdAtt.RootTable.FindColumn ("COMMENTS"); 10 if(lims.Len(form.formArguments) > 2) //如果传过来的值大于2个 11 { 12 isReadOnly = form.formArguments[2]; //设置变量,把传递来的第三个值赋值给该变量 13 } 14 //add by Michael 2013-5-19 在线编辑(修订) 15 if(lims.Len(form.formArguments) > 3) //如果传过来的值大于三个 16 { 17 form.Variables["OnlineEdit"] = form.formArguments[3]; //设置变量,把传递来的第四个值赋值给该变量 18 } 19 if(lims.Len(form.formArguments) > 4) 20 { 21 form.Variables["WorkFlowCode"] = form.formArguments[4]; //设置变量,把传递来的第五个值赋值给该变量 22 } 23 //end 24 25 form.Variables.Set("relatedTable", rTable); //把rTable的值赋值给窗体变量relatedTable 26 form.Variables.Set("relatedOrigrec", rOrigrec); //把rOrigrec的值赋值给窗体变量relatedOrigrec 27 form.Variables.Set("readOnly", isReadOnly); //把isReadOnly的值赋值给窗体变量readOnly 28 29 if(isReadOnly) //判断isReadOnly,为真执行下面语句 30 { 31 lbtnViewAtt.Left = lbtnAddAtt.Left; 32 lbtnAddAtt.Visible = false; //这里的语句可以自定义,按照自己的需求进行更改 33 lbtnDelAtt.Visible = false; 34 lbtnViewAtt.Visible = true; 35 } 36 else //为假,执行下面的语句 37 { 38 lbtnAddAtt.Visible = true; 39 lbtnDelAtt.Visible = true; 40 lbtnViewAtt.Visible = true; 41 var canedit : Boolean = (rOrigrec != null); //如果rOrigrec不为空,则把true赋值给canedit变量 42 lbtnAddAtt.Enabled = canedit; //用anedit变量控制控件的显示,为真可用 43 colComment.ReadOnly = (!canedit); //用anedit变量控制控件的显示,为假只读 44 } 45 46 dgdAtt.Data = lims.GetDataSource( "Sunway.ListAttachments", [rTable,rOrigrec] ); //把表格名字和选中行的rOrigrec传给公共函数Sunway.ListAttachments 47 //DS的作用是根据传递过去的Related(关联的)表格名、Origrec查找公共表的中内容 48 lbtnDelAtt.Enabled = ( dgdAtt.RowCount > 0 ); //如果控件的行数不为空,则让删除控件显示 49 } 50 else //如果传过来的值为空。则制定下面的代码,清楚控件中内容 51 { 52 lbtnViewAtt.Left = lbtnAddAtt.Left; 53 // lbtnViewAtt.Visible = true; 54 dgdAtt.ClearData(); //清楚控件中内容 55 } 56 57 if(form.Variables["OnlineEdit"] == true) //如果在线编辑变量的值为真,则让Visible属性为真,btnWordOnline控件可见 58 { 59 btnWordOnline.Visible = true; 60 } 61 else ////如果在线编辑变量的值为假,则让Visible属性为真,btnWordOnline控件不可见 62 { 63 btnWordOnline.Visible = false; 64 } 65 }
AuditHistory
功能:
查看审核历史记录,右键菜单功能有复制到剪切板,导出到Excel
参数:
{WorkFlowCode,relatedOrigrec} WorkFlowCode工作流代码,relatedOrigrec关联表的唯一标识符
返回值:无
1 function Form1_OnLoad( sender, eventArgs ) 2 { 3 4 var arrActions = //设置一个数组,类似于一个二维数组 5 [ 6 ["btnCopy",form.Resources["Copy"],true], 7 ["btnExport",form.Resources["Export"],true] 8 ]; 9 10 CreateContextMenu(dgAuditHistory,arrActions); //??????? 11 if(lims.Len(form.formArguments) == 1) //如果只有工作流代码,执行下面语句 12 { 13 var WorkFlowCode = form.formArguments[0]; 14 form.Variables["WorkFlowCode"]= WorkFlowCode; 15 dgAuditHistory.Data = lims.GetDataSource("Sunway.GET_AUDIT_HISTORY", [WorkFlowCode]); //执行公共代码,查询公共表格GENERAL_WORKFLOW_HISTORY和GENERAL_WORKFLOW_STEPS 16 } 17 else if(lims.Len(form.formArguments) > 1) //如果传过来的值大于1,则把唯一值Origrec赋值给relatedOrigrec 18 { 19 var WorkFlowCode = form.formArguments[0]; 20 var relatedOrigrec = form.formArguments[1]; 21 form.Variables["WorkFlowCode"]= WorkFlowCode; //把工作流代码赋值给窗体变量form.Variables["WorkFlowCode"] 22 form.Variables["relatedOrigrec"]= relatedOrigrec; //把工作流代码赋值给窗体变量form.Variables["relatedOrigrec"] 23 24 //执行公共代码,查询公共表格GENERAL_WORKFLOW_HISTORY和GENERAL_WORKFLOW_STEPS 25 dgAuditHistory.Data = lims.GetDataSource("Sunway.GET_AUDIT_HISTORY", [WorkFlowCode,relatedOrigrec]); 26 } 27 else 28 { 29 dgAuditHistory.ClearData(); //如果没有传过来值,就把控件的数据全部清空。 30 } 31 32 }
RichTextDialog
功能:
浏览或修改多行文本
参数:
{formText,Text,readOnly} { formText此窗体标题,Text内容,readOnly只读(默认可写=false)}
返回值:Text修改的文本内容
1 function Form1_OnLoad( sender, eventArgs ) //[窗体标题,窗体内文本内容,readonly只读,默认为false] 2 { 3 if(lims.Len(form.formArguments) > 0) form.Text = form.formArguments[0]; 4 if(lims.Len(form.formArguments) > 1) rtxtContent.Text = form.formArguments[1]; 5 //Add by LEOLEE 04/17/2008 6 if(lims.Len(form.formArguments) > 2) 7 { 8 if( form.formArguments[2] == true ) //如果传过来的第三个参数为真,则执行下面的代码控制控件的属性 9 { 10 btnClose.Left = btnCancel.Left; 11 btnOK.Visible = false; 12 btnCancel.Visible = false; 13 btnClose.Visible = true; 14 rtxtContent.ReadOnly=true; 15 } 16 } 17 //END Add by LEOLEE 04/17/2008 18 }
ModifyOrDeleteOrView(与之相关的还有ModifyOrDelete,没有查看操作)
功能:
选择“编辑”或“删除”或查看操作
参数: 步骤代码
返回值:
选择“编辑”操作返回“Modify”,选择“删除”操作返回“Delete”,选择“查看”操作返回“View”
1 function Form1_OnLoad( sender, eventArgs ) 2 { 3 if(lims.Len(form.formArguments) > 0) 4 { 5 form.Variables["StepCode"] = form.formArguments[0]; 6 //如果传过来的步骤代码为为真,则执行下面的代码,控制控件属性。可以自定义 7 if(form.Variables["StepCode"] == "SearchReport" || form.Variables["StepCode"] == "Approve" || form.Variables["StepCode"] == "Release") 8 { 9 rbxModify.Enabled = false; 10 rbxDelete.Enabled = false; 11 rbxView.Checked = true; 12 } 13 } 14 }
FileImportForm(上传文件用的模块)
路径: Application-> Sunwayworld-> form->FileImportForm
功能:
调用窗体上传文件
返回值:上传文件的路径(数组形式返回)
ImportExcel
功能:通过Excel导入结果,此时会自动导入结果并计算结果
参数:无
返回值:无
SearchBySpellCode
功能:
根据拼音选择数据
参数:
{control,ValueMember,DisplayMember} control控件只能是COMBOBOX或DATASET,ValueMember值字段,DisplayMember显示字段
返回值:
[SelectText,SelectValue]选择的键值对(注:返回值是键值对形式,并不是真正的键值对,这里为了好理解,下同)
SearchBySpellCodeMutil
功能:
根据拼音多重选择数据
参数:
{dataset,SelectedValues,ValueType} Dataset数据源,SelectedValues已经选择的数据,ValueType数据类型
返回值:
{Texts,Values}选中的键值对列表
SelectBox
功能:
多重选择指定数据源数据(没有拼音搜索功能)
参数:
{ dataset,FormText,onlyOne} Dataset数据源,FormText此窗体标题,onlyOne是否单选
返回值:
{Texts,Values}选中的键值对(或列表)
SSLPicker
功能:
选择一个SSL文件
参数:
{searchKey,DISPLAYTEXT} searchKey查询关键字,DISPLAYTEXT SSL文件显示名称
返回值:
CATEGORY名称+SSL文件名
WebBrower
功能:
显示URl页面,就是传入一个url地址,然后在这里显示出来这个地址的页面
参数: {URL} URL页面地址
返回值:无
XFDCodeViewer
功能:
显示Form窗体和后台代码
参数:
{Formid,LangId} Formid窗体ID, LangId语言ID
返回值:无