private void btnSendRequest_Click(object sender, EventArgs e) { RequestCallBack callback = new RequestCallBack(); InstanceContext context = new InstanceContext(callback); MiddlewareServiceReference.MiddlewareServiceClient Proxy = new MiddlewareServiceReference.MiddlewareServiceClient(context); MiddlewareServiceReference.TransactionInfo _transaction = new MiddlewareServiceReference.TransactionInfo(); #region own code if (txtTransactionId.Text != "" && txtTxnType.Text != "" && txtAmount.Text != "") { _transaction.transactionId = txtTransactionId.Text.ToString(); _transaction.transactionAmount = Convert.ToDecimal(txtAmount.Text); _transaction.transactionType = txtTxnType.Text.ToString(); ; _transaction.invoiceNumber = txtInvoiceNo.Text.ToString(); _transaction.privateData = txtPrivateData.Text.ToString(); int _ack = Proxy.TransactionRequest(_transaction); switch (_ack) { case 6: { MessageBox.Show("Response Code: " + _ack.ToString() + "\nDescription: Action Succeeded."); const int _AC_Success = 0x06; if (_ack == _AC_Success) { Proxy.WaitTransactionResponse(120000); } break; } case 5: { MessageBox.Show("Response Code: " + _ack.ToString() + "\nDescription: Invalid Amount."); break; } case 9: { MessageBox.Show("Response Code: " + _ack.ToString() + "\nDescription: Incomplete data received."); break; } case 21: { MessageBox.Show("Response Code: " + _ack.ToString() + "\nDescription: Message not received by the terminal within a timeout."); break; } case 22: { MessageBox.Show("Response Code: " + _ack.ToString() + "\nDescription: Message length too big."); break; } case 24: { MessageBox.Show("Response Code: " + _ack.ToString() + "\nDescription: Invalid command type."); break; } case 33: { MessageBox.Show("Response Code: " + _ack.ToString() + "\nDescription: INIT not received after the first power on."); break; } case 34: { MessageBox.Show("Response Code: " + _ack.ToString() + "\nDescription: Message format error in request message."); break; } case 35: { MessageBox.Show("Response Code: " + _ack.ToString() + "\nDescription: Error in request data."); break; } case 36: { MessageBox.Show("Response Code: " + _ack.ToString() + "\nDescription: EDC is busy in either finalizing a previous request or doing an activity with the bank host."); break; } case 40: { MessageBox.Show("Response Code: " + _ack.ToString() + "\nDescription: Terminal is not initialized with host."); break; } case 1: { MessageBox.Show("Response Code: " + _ack.ToString() + "\nDescription: General Failure."); break; } case 91: { MessageBox.Show("Response Code: " + _ack.ToString() + "\nDescription: POSAPI time out."); break; } case 92: { MessageBox.Show("Response Code: " + _ack.ToString() + "\nDescription: Syntax/format error or Invalid data tags."); break; } case 93: { MessageBox.Show("Response Code: " + _ack.ToString() + "\nDescription: POSAPI Input/Output Error/Device not connected."); break; } case 94: { MessageBox.Show("Response Code: " + _ack.ToString() + "\nDescription: POSAPI is busy/waiting for response from EDC."); break; } default: { MessageBox.Show("Unknkown Error Please Contact System Administrator"); break; } } } else { MessageBox.Show("Please enter values in required fields"); } #endregion }
public void LogReport() { RequestCallBack callback = new RequestCallBack(); InstanceContext context = new InstanceContext(callback); MiddlewareServiceReference.MiddlewareServiceClient Proxy = new MiddlewareServiceReference.MiddlewareServiceClient(context); MiddlewareServiceReference.TransactionInfo _transaction = new MiddlewareServiceReference.TransactionInfo(); int _requestType = 0; int _ack = Proxy.ReportRequest((ReportRequestType)_requestType); switch (_ack) { case 6: { MessageBox.Show("Response Code: " + _ack.ToString() + "\nDescription: Action Succeeded."); const int _AC_Success = 0x06; if (_ack == _AC_Success) { Proxy.WaitReportRequest(12000); } break; } case 4: { MessageBox.Show("Response Code: " + _ack.ToString() + "\nDescription: Invalid User Defined Field."); break; } case 9: { MessageBox.Show("Response Code: " + _ack.ToString() + "\nDescription: Incomplete data received."); break; } case 21: { MessageBox.Show("Response Code: " + _ack.ToString() + "\nDescription: Message not received by the terminal within a timeout."); break; } case 22: { MessageBox.Show("Response Code: " + _ack.ToString() + "\nDescription: Message length too big."); break; } case 24: { MessageBox.Show("Response Code: " + _ack.ToString() + "\nDescription: Invalid command type."); break; } case 33: { MessageBox.Show("Response Code: " + _ack.ToString() + "\nDescription: INIT not received after the first power on."); break; } case 34: { MessageBox.Show("Response Code: " + _ack.ToString() + "\nDescription: Message format error in request message."); break; } case 35: { MessageBox.Show("Response Code: " + _ack.ToString() + "\nDescription: Error in request data."); break; } case 36: { MessageBox.Show("Response Code: " + _ack.ToString() + "\nDescription: EDC is busy in either finalizing a previous request or doing an activity with the bank host."); break; } case 1: { MessageBox.Show("Response Code: " + _ack.ToString() + "\nDescription: General Failure."); break; } case 91: { MessageBox.Show("Response Code: " + _ack.ToString() + "\nDescription: POSAPI time out."); break; } case 92: { MessageBox.Show("Response Code: " + _ack.ToString() + "\nDescription: Syntax/format error or Invalid data tags."); break; } case 93: { MessageBox.Show("Response Code: " + _ack.ToString() + "\nDescription: POSAPI Input/Output Error/Device not connected."); break; } case 94: { MessageBox.Show("Response Code: " + _ack.ToString() + "\nDescription: POSAPI is busy/waiting for response from EDC."); break; } default: { MessageBox.Show("Unknkown Error Please Contact System Administrator"); break; } } }