using System;
using Microsoft.VisualBasic;
using static iMESCore.Base.iMESComSubroutine;
using static iMESCore.Base.iMESComXML;
using static iMESCore.Base.iMESConst;
using iMESCore.Settings;
using System.Web.Services;
using System.Data;
using Microsoft.VisualBasic.CompilerServices;
namespace wsABC
{
public class wsWIP_21674
{
private iMESCore.Settings.AppSettings objSetting = new iMESCore.Settings.AppSettings();
private System.Xml.XmlDocument xmlDoc = new System.Xml.XmlDocument(); // 用以讀取Xml字串
private DateTime ArriveTime; // 送達時間
private string strIdentity; // Identity XML字串
private string strReturnValue; // ReturnValue XML字串
private string strException; // Exception XML字串
private string strResult; // Result XML字串
private string strMessage; // Message XML字串
private string strServiceName = "wsWIP_ABC"; // ServiceName
private string strResourceDir = "Resources";
private kcWIP.clsLot objLot = new kcWIP.clsLot();
private kcSYS.clsSYSUserLog objSYS = new kcSYS.clsSYSUserLog(); // 宣告Sys的物件
private MEStc_ABC.clsLot clsLot = new MEStc_ABC.clsLot(); // 宣告Sys的物件
private MEStc_ABC.clsLot_21674 objTest = new MEStc_ABC.clsLot_21674(); // 宣告Sys的物件
public wsWIP_21674()
{
try
{
strResourceDir = System.IO.Path.Combine("wsUpdateResource", objSetting["ResourceDir"].ToString());
}
catch (Exception)
{ }
}
public string HelloWorld(string InXml)
{
return "HelloWorld";
}
[WebMethod(Description = "Execute Check In by LotNo")]
public string Exe_CheckIn(string InXml)
{
string Exe_CheckInRet = default(string);
long LotStamp;
string LotNo = default(string), LinkName, UserNo = default(string);
DataTable dtAttrib;
DataTable dtEquipment;
DataTable dtEquipmentChamber;
DataRow drData;
DataTable dtMTLLot;
System.Xml.XmlNodeList xmlList;
string ShiftNo = "N/A";
string LotRecord = defString;
int i;
var CheckInTime = defDateTime;
string RuleNo = ""; // Added by Jialing 2011/02/18
ArriveTime = DateTime.Now;
try
{
// 讀取InXml字串
xmlDoc.LoadXml(InXml);
UserNo = GetXMLCurUserNo(xmlDoc);
// 組Identity字串
strIdentity = CombineXMLIdentity(Environment.MachineName, UserNo, Conversions.ToString(ArriveTime));
// 開始解譯InXml字串
if (xmlDoc.DocumentElement.GetElementsByTagName("lotstamp").Count > 0)
{
if (xmlDoc.GetElementsByTagName("lotstamp").Item(0).SelectNodes("value").Count > 0)
{
LotStamp = Conversions.ToLong(xmlDoc.DocumentElement.GetElementsByTagName("lotstamp").Item(0).SelectNodes("value").Item(0).InnerText);
}
else
{
throw new iMESException.MESException("0000-200002", "[%LotStamp%] [%Not Found%]");
}
}
else
{
throw new iMESException.MESException("0000-200002", "[%LotStamp%] [%Not Found%]");
}
if (xmlDoc.DocumentElement.GetElementsByTagName("lotno").Count > 0)
{
if (xmlDoc.GetElementsByTagName("lotno").Item(0).SelectNodes("value").Count > 0)
{
LotNo = xmlDoc.DocumentElement.GetElementsByTagName("lotno").Item(0).SelectNodes("value").Item(0).InnerText;
}
else
{
throw new iMESException.MESException("0000-200002", "[%LotNo%] [%Not Found%]");
}
}
else
{
throw new iMESException.MESException("0000-200002", "[%LotNo%] [%Not Found%]");
}
if (xmlDoc.DocumentElement.GetElementsByTagName("linkname").Count > 0)
{
if (xmlDoc.GetElementsByTagName("linkname").Item(0).SelectNodes("value").Count > 0)
{
LinkName = xmlDoc.DocumentElement.GetElementsByTagName("linkname").Item(0).SelectNodes("value").Item(0).InnerText;
}
else
{
throw new iMESException.MESException("0000-200002", "[%LinkName%] [%Not Found%]");
}
}
else
{
throw new iMESException.MESException("0000-200002", "[%LinkName%] [%Not Found%]");
}
// Added by Jialing 2011/02/18
if (xmlDoc.DocumentElement.GetElementsByTagName("ruleno").Count > 0)
{
if (xmlDoc.GetElementsByTagName("ruleno").Item(0).SelectNodes("value").Count > 0)
{
RuleNo = xmlDoc.DocumentElement.GetElementsByTagName("ruleno").Item(0).SelectNodes("value").Item(0).InnerText;
}
}
if (xmlDoc.DocumentElement.GetElementsByTagName("shiftno").Count > 0)
{
if (xmlDoc.GetElementsByTagName("shiftno").Item(0).SelectNodes("value").Count > 0)
{
ShiftNo = xmlDoc.DocumentElement.GetElementsByTagName("shiftno").Item(0).SelectNodes("value").Item(0).InnerText;
}
}
if (xmlDoc.DocumentElement.GetElementsByTagName("lotrecord").Count > 0)
{
if (xmlDoc.GetElementsByTagName("lotrecord").Item(0).SelectNodes("value").Count > 0)
{
LotRecord = xmlDoc.DocumentElement.GetElementsByTagName("lotrecord").Item(0).SelectNodes("value").Item(0).InnerText;
}
}
// 加入CheckIntime By carl 2007/06/04
if (xmlDoc.DocumentElement.GetElementsByTagName("checkintime").Count > 0)
{
if (xmlDoc.GetElementsByTagName("checkintime").Item(0).SelectNodes("value").Count > 0)
{
CheckInTime = Conversions.ToDate(xmlDoc.DocumentElement.GetElementsByTagName("checkintime").Item(0).SelectNodes("value").Item(0).InnerText);
}
}
// 1.取出CheckIn Data, Attrib --------------------------------------------------------------------------------------------
//
// .. ..
//
// ..
// ..
// ..
// ..
// ..
// ..
//
//
//
dtAttrib = new DataTable("Attrib");
dtAttrib.Columns.Add("AttribNo", Type.GetType("System.String"));
dtAttrib.Columns.Add("AttribType", Type.GetType("System.Int32"));
dtAttrib.Columns.Add("AttribSequence", Type.GetType("System.Int32"));
dtAttrib.Columns.Add("AttribSource", Type.GetType("System.Int32"));
dtAttrib.Columns.Add("AttribPhase", Type.GetType("System.Int32"));
dtAttrib.Columns.Add("AttribValue", Type.GetType("System.String"));
dtAttrib.Columns.Add("SaveToLotPropertyNo", Type.GetType("System.String"));
// 2015-12-16, Joe, Add
dtAttrib.Columns.Add("TestValue", Type.GetType("System.String"));
dtAttrib.Columns.Add("QCItemNo", Type.GetType("System.String"));
dtAttrib.Columns.Add("Result", Type.GetType("System.String"));
dtAttrib.Columns.Add("Result_INT", Type.GetType("System.Int32"));
dtAttrib.Columns.Add("FactorSerial", Type.GetType("System.String"));
dtAttrib.Columns.Add("SerialNo", Type.GetType("System.Int32"));
dtAttrib.Columns.Add("MEMO", Type.GetType("System.String"));
dtAttrib.Columns.Add("ComponentNo", Type.GetType("System.String"));
if (xmlDoc.DocumentElement.GetElementsByTagName("attrib").Count > 0)
{
if (xmlDoc.GetElementsByTagName("attrib").Item(0).SelectNodes("value").Count > 0)
{
xmlList = xmlDoc.GetElementsByTagName("attrib").Item(0).SelectNodes("value");
var loopTo = xmlList.Count - 1;
for (i = 0; i <= loopTo; i++)
{
if (xmlList[i].SelectNodes("attribno").Count == 0 | xmlList[i].SelectNodes("attribtype").Count == 0 | xmlList[i].SelectNodes("attribsequence").Count == 0 | xmlList[i].SelectNodes("attribsource").Count == 0 | xmlList[i].SelectNodes("attribphase").Count == 0 | xmlList[i].SelectNodes("attribvalue").Count == 0)
{
throw new iMESException.MESException("0000-200002", "[%AttribNo%], [%AttribType%], [%AttribSequence%], [%AttribSource%], [%AttribPhase%], [%AttribValue%] [%cannotbeempty%]");
}
// 將資料存入暫存Table
drData = dtAttrib.NewRow();
drData["AttribNo"] = xmlList[i].SelectNodes("attribno").Item(0).InnerText;
drData["AttribType"] = xmlList[i].SelectNodes("attribtype").Item(0).InnerText;
drData["AttribSequence"] = xmlList[i].SelectNodes("attribsequence").Item(0).InnerText;
drData["AttribSource"] = xmlList[i].SelectNodes("attribsource").Item(0).InnerText;
drData["AttribPhase"] = xmlList[i].SelectNodes("attribphase").Item(0).InnerText;
drData["AttribValue"] = xmlList[i].SelectNodes("attribvalue").Item(0).InnerText;
if (xmlList[i].SelectNodes("savetolotpropertyno").Count > 0)
{
drData["SaveToLotPropertyNo"] = xmlList[i].SelectNodes("savetolotpropertyno").Item(0).InnerText;
}
else
{
drData["SaveToLotPropertyNo"] = "";
}
// 2015-12-16, Joe, Add
drData["TestValue"] = xmlList[i].SelectNodes("attribvalue").Item(0).InnerText;
if (xmlList[i].SelectNodes("qcitemno").Count > 0)
{
drData["QCItemNo"] = xmlList[i].SelectNodes("qcitemno").Item(0).InnerText;
}
if (xmlList[i].SelectNodes("result").Count > 0)
{
drData["Result"] = xmlList[i].SelectNodes("result").Item(0).InnerText;
}
if (xmlList[i].SelectNodes("result_int").Count > 0 && !string.IsNullOrEmpty(xmlList[i].SelectNodes("result_int").Item(0).InnerText))
{
if (Information.IsNumeric(xmlList[i].SelectNodes("result_int").Item(0).InnerText))
{
drData["Result_INT"] = xmlList[i].SelectNodes("result_int").Item(0).InnerText;
}
else
{
throw new iMESException.MESException("0000-200011", "Result_INT must be numeric");
}
}
if (xmlList[i].SelectNodes("factorserial").Count > 0)
{
drData["FactorSerial"] = xmlList[i].SelectNodes("factorserial").Item(0).InnerText;
}
if (xmlList[i].SelectNodes("serialno").Count > 0 && !string.IsNullOrEmpty(xmlList[i].SelectNodes("serialno").Item(0).InnerText))
{
drData["SerialNo"] = xmlList[i].SelectNodes("serialno").Item(0).InnerText;
}
dtAttrib.Rows.Add(drData);
}
}
}
// 2.取出CheckIn Data, Equipment --------------------------------------------------------------------------------------------
//
// .. ..
//
// ..
// ..
//
//
//
dtEquipment = new DataTable("Equipment");
dtEquipment.Columns.Add("EquipmentNo", Type.GetType("System.String"));
dtEquipment.Columns.Add("LoadPort", Type.GetType("System.Int16"));
if (xmlDoc.DocumentElement.GetElementsByTagName("equipment").Count > 0)
{
if (xmlDoc.GetElementsByTagName("equipment").Item(0).SelectNodes("value").Count > 0)
{
xmlList = xmlDoc.GetElementsByTagName("equipment").Item(0).SelectNodes("value");
var loopTo1 = xmlList.Count - 1;
for (i = 0; i <= loopTo1; i++)
{
if (xmlList[i].SelectNodes("equipmentno").Count == 0)
{
throw new iMESException.MESException("0000-200002", "[%EquipmentNo%] [%cannotbeempty%]");
}
// 將資料存入暫存Table
drData = dtEquipment.NewRow();
drData["EquipmentNo"] = xmlList[i].SelectNodes("equipmentno").Item(0).InnerText;
if (xmlList[i].SelectNodes("loadport").Count > 0)
{
drData["LoadPort"] = xmlList[i].SelectNodes("loadport").Item(0).InnerText;
}
dtEquipment.Rows.Add(drData);
}
}
}
//TsungyYu 2021/06/10取出 Chamber--------------------------------------------------------------------------------------------
dtEquipmentChamber = new DataTable("EquipmentChamber");
dtEquipmentChamber.Columns.Add("EquipmentNo", System.Type.GetType("System.String"));
dtEquipmentChamber.Columns.Add("BelongEquipmentNo", System.Type.GetType("System.String"));
if (xmlDoc.DocumentElement.GetElementsByTagName("equipmentchamber").Count > 0)
{
if (xmlDoc.GetElementsByTagName("equipmentchamber").Item(0).SelectNodes("value").Count > 0)
{
xmlList = xmlDoc.GetElementsByTagName("equipmentchamber").Item(0).SelectNodes("value");
var loopTo1 = xmlList.Count - 1;
for (i = 0; i <= loopTo1; i++)
{
if (xmlList[i].SelectNodes("equipmentno").Count == 0)
{
throw new iMESException.MESException("0000-200002", "[%EquipmentNo%] [%cannotbeempty%]");
}
//將資料存入暫存Table
drData = dtEquipmentChamber.NewRow();
drData["EquipmentNo"] = xmlList[i].SelectNodes("equipmentno").Item(0).InnerText;
drData["BelongEquipmentNo"] = xmlList[i].SelectNodes("belongequipmentno").Item(0).InnerText;
dtEquipmentChamber.Rows.Add(drData);
}
}
}
//20240119自定义
DataTable dtSelfDesgin;
dtSelfDesgin = new DataTable("tblSelfDesgin");
dtSelfDesgin.Columns.Add("TblId", Type.GetType("System.String"));
dtSelfDesgin.Columns.Add("IsSelect", Type.GetType("System.Int32"));
if (xmlDoc.DocumentElement.GetElementsByTagName("selfdesgininfo").Count > 0)
{
if (xmlDoc.GetElementsByTagName("selfdesgininfo").Item(0).SelectNodes("value").Count > 0)
{
xmlList = xmlDoc.GetElementsByTagName("selfdesgininfo").Item(0).SelectNodes("value");
var loopTo1 = xmlList.Count - 1;
for (i = 0; i <= loopTo1; i++)
{
if (xmlList[i].SelectNodes("tblid").Count == 0)
{
throw new iMESException.MESException("0000-200002", "[%TblId%] [%cannotbeempty%]");
}
if (Convert.ToInt32(xmlList[i].SelectNodes("isselect").Item (0).InnerText ) == 1)
{
throw new Exception ("该批号已经被其他生产批选择!");
}
// 將資料存入暫存Table
drData = dtSelfDesgin.NewRow();
drData["TblId"] = xmlList[i].SelectNodes("tblid").Item(0).InnerText;
drData["IsSelect"] = xmlList[i].SelectNodes("isselect").Item(0).InnerText;
dtSelfDesgin.Rows.Add(drData);
}
}
}
// 多人加工
DataTable dtLoginState;
dtLoginState = new DataTable("tblLoginState");
dtLoginState.Columns.Add("UserNo", Type.GetType("System.String"));
dtLoginState.Columns.Add("UserName", Type.GetType("System.String"));
dtLoginState.Columns.Add("CheckInTime", Type.GetType("System.DateTime"));
if (xmlDoc.DocumentElement.GetElementsByTagName("loginstate").Count > 0)
{
if (xmlDoc.GetElementsByTagName("loginstate").Item(0).SelectNodes("value").Count > 0)
{
xmlList = xmlDoc.GetElementsByTagName("loginstate").Item(0).SelectNodes("value");
var loopTo2 = xmlList.Count - 1;
for (i = 0; i <= loopTo2; i++)
{
if (xmlList[i].SelectNodes("userno").Count == 0 || xmlList[i].SelectNodes("username").Count == 0 || xmlList[i].SelectNodes("checkintime").Count == 0)
{
throw new iMESException.MESException("0000-200002", "[%userno%], [%username%], [%checkintime%] [%not found%]");
}
// 將資料存入暫存Table
drData = dtLoginState.NewRow();
drData["UserNo"] = xmlList[i].SelectNodes("userno").Item(0).InnerText;
drData["UserName"] = xmlList[i].SelectNodes("username").Item(0).InnerText;
drData["CheckInTime"] = xmlList[i].SelectNodes("checkintime").Item(0).InnerText;
dtLoginState.Rows.Add(drData);
}
}
}
// 模治具
DataTable dtAccessory;
dtAccessory = new DataTable("Accessory");
dtAccessory.Columns.Add("EquipmentNo", Type.GetType("System.String"));
dtAccessory.Columns.Add("AccessoryNo", Type.GetType("System.String"));
dtAccessory.Columns.Add("AccessoryVersion", Type.GetType("System.String"));
dtAccessory.Columns.Add("AccessoryType", Type.GetType("System.String"));
dtAccessory.Columns.Add("AccumulateQty", Type.GetType("System.Decimal"));
if (xmlDoc.DocumentElement.GetElementsByTagName("accessory").Count > 0)
{
if (xmlDoc.GetElementsByTagName("accessory").Item(0).SelectNodes("value").Count > 0)
{
xmlList = xmlDoc.GetElementsByTagName("accessory").Item(0).SelectNodes("value");
var loopTo3 = xmlList.Count - 1;
for (i = 0; i <= loopTo3; i++)
{
if (xmlList[i].SelectNodes("equipmentno").Count == 0 || xmlList[i].SelectNodes("accessoryno").Count == 0 || xmlList[i].SelectNodes("accessoryversion").Count == 0 || xmlList[i].SelectNodes("accessorytype").Count == 0 || xmlList[i].SelectNodes("accumulateqty").Count == 0)
{
throw new iMESException.MESException("0000-200002", "[%equipmentno%], [%accessoryno%], [%accessoryversion%], [%accessorytype%],[%accumulateqty%] [%not found%]");
}
// 將資料存入暫存Table
drData = dtAccessory.NewRow();
drData["EquipmentNo"] = xmlList[i].SelectNodes("equipmentno").Item(0).InnerText;
drData["AccessoryNo"] = xmlList[i].SelectNodes("accessoryno").Item(0).InnerText;
drData["AccessoryVersion"] = xmlList[i].SelectNodes("accessoryversion").Item(0).InnerText;
drData["AccessoryType"] = xmlList[i].SelectNodes("accessorytype").Item(0).InnerText;
drData["AccumulateQty"] = xmlList[i].SelectNodes("accumulateqty").Item(0).InnerText;
dtAccessory.Rows.Add(drData);
}
}
}
else
{
// Kevin 20140106,區分沒選模治具與沒顯示模治具,介面沒顯示模治具則設為Nothing
dtAccessory = null;
}
dtMTLLot = new DataTable("Temp_MaterialLot");
dtMTLLot.Columns.Add("MaterialNo", Type.GetType("System.String"));
dtMTLLot.Columns.Add("MaterialLotNo", Type.GetType("System.String"));
if (xmlDoc.DocumentElement.GetElementsByTagName("temp_materiallot").Count > 0)
{
if (xmlDoc.GetElementsByTagName("temp_materiallot").Item(0).SelectNodes("value").Count > 0)
{
xmlList = xmlDoc.GetElementsByTagName("temp_materiallot").Item(0).SelectNodes("value");
var loopTo4 = xmlList.Count - 1;
for (i = 0; i <= loopTo4; i++)
{
// 將資料存入暫存Table
drData = dtMTLLot.NewRow();
drData["MaterialNo"] = xmlList[i].SelectNodes("materialno").Item(0).InnerText;
drData["MaterialLotNo"] = xmlList[i].SelectNodes("materiallotno").Item(0).InnerText;
dtMTLLot.Rows.Add(drData);
}
}
}
// 3.檢查投料點在機台的料是否足夠 -------------------------------------------------------------------------------------------
objLot.ChkMaterialOnEquipment(LotNo, dtEquipment);
// 4.Update CheckIn----------------------------------------------------------------------------------------------------------
string LanguageMode = GetXMLLanguageMode(xmlDoc);
objTest.BR_CheckIn(LotStamp, LotNo, LinkName, dtAttrib, dtEquipment, UserNo, ShiftNo, LotRecord, CheckInTime, RuleNo, dtLoginState, dtAccessory, dtMTLLot, LanguageMode, dtEquipmentChamber,dtSelfDesgin);
// 5.Return Value------------------------------------------------------------------------------------------------------------
strException = "";
strResult = "success";
objSYS.AddEventLog(strServiceName, UserNo, "LotNo", LotNo, DateTime.Now, "Exe_CheckIn", ComputerName: GetXMLCurComputer(xmlDoc));
}
catch (iMESException.MESException ex)
{
strReturnValue = "";
switch (ex.ErrorCode.ToString() ?? "")
{
case "IPQCNO":
{
strException = CombineXMLException(ex.ErrorCode.ToString(), TranslateMsg(ex.Message, GetXMLLanguageMode(xmlDoc), strResourceDir), "IPQCNO", ex.StackTrace);
break;
}
default:
{
strException = CombineXMLException(Conversions.ToString(ex.ErrorCode), TranslateMsg(ex.Message, GetXMLLanguageMode(xmlDoc), strResourceDir), "Exe_CheckIn fail!", ex.StackTrace);
break;
}
}
strResult = "fail";
objSYS.AddErrorLog_ErrorCode(strServiceName, UserNo, "LotNo", LotNo, DateTime.Now, strException, ComputerName: GetXMLCurComputer(xmlDoc), ErrorCode: Conversions.ToString(ex.ErrorCode));
}
catch (Exception ex)
{
strReturnValue = "";
strException = CombineXMLException(defWSErrCode, ex.Message, "Exe_CheckIn fail!", ex.StackTrace);
strResult = "fail";
objSYS.AddErrorLog_ErrorCode(strServiceName, UserNo, "LotNo", LotNo, DateTime.Now, strException, ComputerName: GetXMLCurComputer(xmlDoc));
}
finally
{
// 將各部份之XML字串組起來並傳出
Exe_CheckInRet = CombineXMLResponse(strIdentity, strReturnValue, strException, strResult, "");
}
return Exe_CheckInRet;
}
public string LoadSelfDesginInfo(string InXml)
{
string LoadSelfDesginInfoRet = default(string);
// 先給預設值,以判斷是否有傳入該參數
string SelfDesginBasisNo = defString;
ArriveTime = DateTime.Now;
string AdditionalXml = "";
try
{
// 讀取InXml字串
xmlDoc.LoadXml(InXml);
// 組Identity字串
strIdentity = CombineXMLIdentity(Environment.MachineName, GetXMLCurUserNo(xmlDoc), Conversions.ToString(ArriveTime));
// 判斷是否有傳入Subcontractor,若有,表示要依Subcontractor查詢
if (xmlDoc.DocumentElement.GetElementsByTagName("tblid").Count > 0)
{
if (xmlDoc.GetElementsByTagName("tblid").Item(0).SelectNodes("value").Count > 0)
{
SelfDesginBasisNo = xmlDoc.DocumentElement.GetElementsByTagName("tblid").Item(0).SelectNodes("value").Item(0).InnerText;
}
}
// 呼叫副程式處理查詢條件與Additional格式
AdditionalXml = CombineXMLQueryAdditional(xmlDoc);
// 呼叫Dll執行
strReturnValue = objTest.LoadSelfDesginInfo(SelfDesginBasisNo, AdditionalXml);
strException = "";
strResult = "success";
}
catch (iMESException.MESException ex)
{
strReturnValue = "";
strException = CombineXMLException(Conversions.ToString(ex.ErrorCode), TranslateMsg(ex.Message, GetXMLLanguageMode(xmlDoc), strResourceDir), "Show SelfDesgin Info Failed!!", ex.StackTrace);
strResult = "fail";
}
catch (Exception ex)
{
strReturnValue = "";
strException = CombineXMLException(defWSErrCode, ex.Message, "Show SelfDesgin Info Failed!!", ex.StackTrace);
strResult = "fail";
}
finally
{
// 將各部份之XML字串組起來並傳出
LoadSelfDesginInfoRet = CombineXMLResponse(strIdentity, strReturnValue, strException, strResult, "");
}
return LoadSelfDesginInfoRet;
}
public string LoadSelfDesginInfo_CO(string InXml)
{
string LoadSelfDesginInfoCoRet = default(string);
// 先給預設值,以判斷是否有傳入該參數
string SelfDesginLotNo = defString;
ArriveTime = DateTime.Now;
string AdditionalXml = "";
try
{
// 讀取InXml字串
xmlDoc.LoadXml(InXml);
// 組Identity字串
strIdentity = CombineXMLIdentity(Environment.MachineName, GetXMLCurUserNo(xmlDoc), Conversions.ToString(ArriveTime));
// 判斷是否有傳入LotNo,若有,表示要依判斷是否有傳入LotNo查詢
if (xmlDoc.DocumentElement.GetElementsByTagName("lotno").Count > 0)
{
/*if (xmlDoc.GetElementsByTagName("tblid").Item(0).SelectNodes("value").Count > 0)
{
SelfDesginBasisNo = xmlDoc.DocumentElement.GetElementsByTagName("tblid").Item(0).SelectNodes("value").Item(0).InnerText;
}*/
SelfDesginLotNo = xmlDoc.DocumentElement.GetElementsByTagName("lotno").Item(0).SelectNodes("value").Item(0).InnerText;
}
// 呼叫副程式處理查詢條件與Additional格式
AdditionalXml = CombineXMLQueryAdditional(xmlDoc);
// 呼叫Dll執行
strReturnValue = objTest.LoadSelfDesginInfo_CO(SelfDesginLotNo, AdditionalXml);
strException = "";
strResult = "success";
}
catch (iMESException.MESException ex)
{
strReturnValue = "";
strException = CombineXMLException(Conversions.ToString(ex.ErrorCode), TranslateMsg(ex.Message, GetXMLLanguageMode(xmlDoc), strResourceDir), "Show SelfDesgin Info Failed!!", ex.StackTrace);
strResult = "fail";
}
catch (Exception ex)
{
strReturnValue = "";
strException = CombineXMLException(defWSErrCode, ex.Message, "Show SelfDesgin Info Failed!!", ex.StackTrace);
strResult = "fail";
}
finally
{
// 將各部份之XML字串組起來並傳出
LoadSelfDesginInfoCoRet = CombineXMLResponse(strIdentity, strReturnValue, strException, strResult, "");
}
return LoadSelfDesginInfoCoRet;
}
}
}