Ejemplo n.º 1
0
        private int confirmUndoTransaction(List <PW_Parameter> transactionResult, int RetTransaction)
        {
            int ret = 0;

            foreach (PW_Parameter item in transactionResult)
            {
                if (item.parameterCode == (uint)E_PWINFO.PWINFO_CNFREQ & item.parameterValue == "1")
                {
                    if (RetTransaction == (int)E_PWRET.PWRET_FROMHOSTPENDTRN)
                    {
                        E_PWCNF transactionStatus = E_PWCNF.PWCNF_REV_AUTO_ABORT;
                        ret = eft.confirmPendTransaction(transactionStatus, transactionResult);
                    }
                    else
                    {
                        ConfirmationWindow cw = new ConfirmationWindow();
                        E_PWCNF            transactionStatus = E_PWCNF.PWCNF_REV_AUTO_ABORT;
                        cw.ShowDialog(ref transactionStatus);
                        ret = eft.confirmUndoTransaction(transactionStatus, transactionResult);
                    }
                }
            }

            return(ret);
        }
Ejemplo n.º 2
0
        private int executeTransaction()
        {
            E_PWOPER operation = (E_PWOPER)Enum.Parse(typeof(E_PWOPER), cmbOper.SelectedValue.ToString());

            PGWLib.PGWLib eft = new PGWLib.PGWLib();
            int           ret = eft.startTransaction(operation, lstParameters.Items.Cast <PW_Parameter>().ToList());

            if (ret != 0)
            {
                string sError = ((E_PWRET)ret).ToString();
                int    iError = ret;

                // verifica se deu erro de transacao anterior pendente
                if (ret == (int)E_PWRET.PWRET_FROMHOSTPENDTRN)
                {
                    // confirma a transacao que estava pendente

                    E_PWCNF transactionStatus = E_PWCNF.PWCNF_REV_AUTO_ABORT;
                    ret = eft.confirmPendTransaction(transactionStatus, getTransactionResult());
                    MessageBox.Show(string.Format("Erro ao executar a transação: {0}{1}{2}{3}{4}", iError, Environment.NewLine, sError, Environment.NewLine,
                                                  ">> TRANSACAO PENDENTE RESOLVIDA <<"));
                }
                else
                {
                    MessageBox.Show(string.Format("Erro ao executar a transação: {0}{1}{2}", iError, Environment.NewLine, sError));
                }
            }
            return(ret);
        }