コード例 #1
0
ファイル: RFC_QDT_DAL.cs プロジェクト: shuicheng9/SAP
        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);
            }
        }
コード例 #2
0
 /// <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)));
 }