prNameRes.StringResult; } } } else { // 获取职位时发生错误 ed.WriteMessage("***Error in getting a point, exiting!!***" + "\r\n"); return; } // 如果获取一个点 } 7) 上面的代码只提示输入名字,请加入提示输入薪水和部门的代码。 8) 完成提示输入后,我们将使用获得的值来创建雇员。 //创建雇员 CreateEmployee(empName, divName, salary, position); //www.knowsky.com 9) 现在来检查部门经理是否已存在。我们通过检查NOD中部门的扩展记录中的经理名字来进行。如果检查到的是一个空字符串,那么我们会提示用户输入经理的名字。注意,通过修改CreateDivision()函数,获取经理的名字变得简单了。 string manager = ""; //创建部门 //给经理传入一个空字符串来检查它是否已存在 Xrecord depMgrXRec; ObjectId xRecId; xRecId = CreateDivision(divName, manager); //打开部门经理扩展记录 depMgrXRec = (Xrecord)trans.GetObject(xRecId, OpenMode.ForRead); TypedValue[] typedVal = depMgrXRec.Data.AsArray(); foreach (TypedValue val in typedVal) { string str; str = (string)val.Value; if (str == "") { //经理没有被设置,现在设置它 // 先提示输入经理的名字 ed.WriteMessage("\r\n"); PromptStringOptions prManagerName = new PromptStringOptions("No manager set for the division! Enter Manager Name"); prManagerName.AllowSpaces = true; PromptResult prManagerNameRes = ed.GetString(prManagerName); if (prManagerNameRes.Status != PromptStatus.OK) { return; } //设置经理的名字 depMgrXRec.Data = new ResultBuffer(new TypedValue((上一页 [1] [2] [3] [4] [5] [6] [7] [8] 下一页 |