/// <summary> /// 查询完成一次后,给OBJ_OSPINFO赋值 /// </summary> /// <param name="sapResult"></param> /// <returns></returns> protected override bool Completed(ref SapResult sapResult) { sapResult.OBJ_OSPINFO = GetOSPInfo(); sapResult.OBJ_KEY = CurrentSapParameter.SapNumber; sapResult.OBJ_SYS = CurrentSapParameter.PaymentCond; return true; }
/// <summary> /// 查询完成一次后,给OBJ_OSPINFO赋值 /// </summary> /// <param name="sapResult"></param> /// <returns></returns> protected override bool Completed(ref SapResult sapResult) { sapResult.OBJ_POTypeChangeInfo = GetPOTypeChangeInfo(); sapResult.OBJ_KEY = CurrentSapParameter.SapNumber; /*sapResult.OBJ_SYS = CurrentSapParameter.PaymentCond;*/ return true; }
/// <summary> /// 输出结果到控制台 /// </summary> public static void ShowResult(SapResult sapResult) { Console.WriteLine("Function finished:"); foreach (SAP.Middleware.Table.RETURN ret in sapResult.RETURN_LIST) { Console.WriteLine("-----------------------------"); Console.WriteLine( "TYPE: " + ret.TYPE + '\n' + "ID: " + ret.ID + '\n' + "Number: " + ret.NUMBER + '\n' + "LOG_NO: " + ret.LOG_NO + '\n' + "LOG_MSG_NO: " + ret.LOG_MSG_NO + '\n' + "MESSAGE_V1: " + ret.MESSAGE_V1 + '\n' + "MESSAGE_V2: " + ret.MESSAGE_V2 + '\n' + "MESSAGE_V3: " + ret.MESSAGE_V3 + '\n' + "MESSAGE_V4: " + ret.MESSAGE_V4 + '\n' + "PARAMETER: " + ret.PARAMETER + '\n' + "ROW: " + ret.ROW + '\n' + "FIELD: " + ret.FIELD + '\n' + "SYSTEM: " + ret.SYSTEM + '\n' + "MESSAGE: " + ret.MESSAGE ); } Console.WriteLine("-----------------------------"); Console.WriteLine("OBJ_TYPE: " + sapResult.OBJ_TYPE); Console.WriteLine("OBJ_KEY: " + sapResult.OBJ_KEY); Console.WriteLine("OBJ_SYS:" + sapResult.OBJ_SYS); Console.WriteLine("-----------------------------"); Console.WriteLine("-----------------------------"); Console.WriteLine(); }
/// <summary> /// /// </summary> /// <param name="sapResult"></param> /// <returns></returns> protected override bool Completed(ref SapResult sapResult) { sapResult = SapReturnResult; if (sapResult.RETURN_LIST[0].TYPE == "W" || sapResult.RETURN_LIST[0].TYPE == "S") { return true; } return false; }
/// <summary> /// /// </summary> /// <param name="sapResult"></param> /// <returns></returns> protected override bool Completed(ref SapResult sapResult) { sapResult = SapReturnResult; if (string.IsNullOrEmpty(SapReturnMatErialDocument) == false) { sapResult.OBJ_KEY = SapReturnMatDocumentYear + "_" + SapReturnMatErialDocument; return true; } return false; }
/// <summary> /// /// </summary> /// <param name="sapResult"></param> /// <returns></returns> protected override bool Completed(ref SapResult sapResult) { sapResult = SapReturnResult; if (SapReturnExpPurchaseOrder != "$" && string.IsNullOrEmpty(SapReturnExpPurchaseOrder) == false) { sapResult.OBJ_KEY = SapReturnExpPurchaseOrder; return true; } return false; }
/// <summary> /// /// </summary> /// <param name="sapResult"></param> /// <returns></returns> protected override bool Completed(ref SapResult sapResult) { sapResult = GetSapResult(); if (SapReturnStatus == "Y" ) { //Y 标示更新收货日期成功 sapResult.OBJ_POINFO = new POINFO() { STATUS = "Y" }; return true; } return false; }
/// <summary> /// POST SAP完成后需要处理的操作,获取处理结果 /// </summary> /// <param name="sapResult"></param> /// <returns></returns> protected override bool Completed(ref SapResult sapResult) { sapResult = SapReturnResult; if (SapReturnObjKey != "$" && string.IsNullOrEmpty(SapReturnObjKey) == false) { sapResult.OBJ_KEY = SapReturnObjKey; sapResult.OBJ_SYS = SapReturnObjSys; sapResult.OBJ_TYPE = SapReturnObjType; return true; } return false; }
/// <summary> /// /// </summary> /// <param name="sapResult"></param> /// <returns></returns> protected override bool Completed(ref SapResult sapResult) { sapResult = GetSapResult(); if (SapReturnStatus == "Y") { //Y 标示更新OSP里的价格成功 sapResult.OBJ_POTypeChangeInfo = new POTypeChangeInfo() { IsSuccess = true }; sapResult.OBJ_KEY = CurrentSapParameter.SapNumber; return true; } else { //Y 标示更新OSP里的价格 sapResult.OBJ_POTypeChangeInfo = new POTypeChangeInfo() { IsSuccess = false }; sapResult.OBJ_KEY = CurrentSapParameter.SapNumber; return false; } }
/// <summary> /// /// </summary> /// <param name="sapResult"></param> /// <returns></returns> protected abstract bool Completed(ref SapResult sapResult);
/// <summary> /// 完成数据插入,需要调用 Invoke() 方法,相当于告知服务器完成一次数据插入 /// </summary> protected virtual void Completed() { if ((bool)CloseDestination()[0] == false) { //当关闭SAP连接失败时,应该把当前数据对象加入到mErrorSapParameters集合中 mErrorSapParameters.Enqueue(new object[] { mCurrentSapParameter, (string)CloseDestination()[1], false }); return; } SapResult sapResult = new SapResult(); //当 OBJ_KEY == "$" 表示此次数据插入失败 if (Completed(ref sapResult) == true) { //当数据插入成功时,当前数据对象加入到mCurrentResult集合中 mSapResult.Add(new object[] { mCurrentSapParameter, sapResult, true }); } else{ //当数据插入失败时,应该把当前数据对象加入到mErrorSapParameters集合中 mErrorSapParameters.Enqueue(new object[] { mCurrentSapParameter, sapResult, false }); } }
///SapErrorInfo /// <summary> /// 得到错误信息 /// </summary> /// <param name="sr"></param> /// <returns></returns> static string GetErrorInfo(SapResult sr) { StringBuilder sb = new StringBuilder(); foreach (SAP.Middleware.Table.RETURN ret in sr.RETURN_LIST) { if (sb.Length > 0) { sb.Append("\n"); } sb.Append(ret.MESSAGE);//ret.MESSAGE } return sb.ToString(); }
/// <summary> /// /// </summary> /// <param name="sapResult"></param> /// <returns></returns> protected override bool Completed(ref SapResult sapResult) { sapResult.OBJ_POINFO = GetPoInfo(); return true; }
/// <summary> /// /// </summary> /// <param name="sapResult"></param> /// <returns></returns> protected override bool Completed(ref SapResult sapResult) { GetVionceInfo(); sapResult = GetSapResult(); return true; }