Exemple #1
0
        /// <summary>
        /// Instantiate a remote function module
        /// </summary>
        /// <param name="functionName">Function module name</param>
        /// <param name="connection">A SnwConnection instance</param>
        public SnwFunction(string functionName, SnwConnection connection)
        {
            if (string.IsNullOrEmpty(functionName))
            {
                throw new ArgumentNullException("functionName");
            }
            if (connection == null)
            {
                throw new ArgumentNullException("connection");
            }

            _functionName = functionName;
            _connection   = connection;

            if (!_connection.Ping())
            {
                throw new SnwConnectorException(Messages.RfcConnectionIsNotOpen);
            }

            RfcErrorInfo errorInfo;

            _functionDescriptionHandler = UnsafeNativeMethods.RfcGetFunctionDesc(_connection.RfcHandle, functionName, out errorInfo);
            errorInfo.IfErrorThrowException();

            _functionHandler = UnsafeNativeMethods.RfcCreateFunction(_functionDescriptionHandler, out errorInfo);
            errorInfo.IfErrorThrowException();
        }
Exemple #2
0
 public BapiTransactionCommit(Exentials.Snw.SnwConnector.SnwConnection connection) :
     base("BAPI_TRANSACTION_COMMIT", connection)
 {
 }