public IRfcTable Rfc_Qdt_Dal(RFC_QDT_Model qdtModel, out RFC_IN_Message rfcMessage) { rfcMessage = new RFC_IN_Message(); try { _configurationId = new RFC_SetUp(); RfcDestinationManager.RegisterDestinationConfiguration(_configurationId); _dest = RfcDestinationManager.GetDestination("SAPMS"); _repository = _dest.Repository; IRfcFunction rfc = _repository.CreateFunction(qdtModel.FunctionModule); //调用函数名 IRfcTable table = rfc.GetTable(qdtModel.E_SAP_QDT); //RFC表数据 rfc.SetValue("I_MESKEY", qdtModel.I_MESKEY); //KEY随机号 不能重复 rfc.SetValue("I_USER", qdtModel.I_USER); //登录名 rfc.SetValue("I_MATNR", qdtModel.I_MATNR); rfc.SetValue("I_CHARG", qdtModel.I_CHARG); rfc.Invoke(_dest); rfcMessage.E_RETURN_CODE = rfc.GetString("E_RETURN_CODE").ToString(); rfcMessage.E_RETURN_MESSAGE = rfc.GetString("E_RETURN_MESSAGE").ToString(); rfcMessage.E_COUNT = rfc.GetInt("E_COUNT").ToString(); rfcMessage.E_SUM = rfc.GetInt("E_SUM").ToString(); return(table); } catch (Exception exception) { rfcMessage.E_RETURN_MESSAGE = "接口QDT 错误:" + exception.ToString(); return(null); } finally { RfcDestinationManager.UnregisterDestinationConfiguration(_configurationId); } }
/// <summary> /// QDT /// </summary> /// <param name="qdtModel"></param> /// <param name="rfcMessage"></param> /// <returns></returns> public DataTable Rfc_Qdt_DataTable(RFC_QDT_Model qdtModel, out RFC_IN_Message rfcMessage) { return(convertDataSap.ConversionDataTableRFCTable(rfcQdtDal.Rfc_Qdt_Dal(qdtModel, out rfcMessage))); }