예제 #1
0
        protected static FR_Bool Execute(DbConnection Connection, DbTransaction Transaction, P_L3BA_CBA_1141 Parameter, CSV2Core.SessionSecurity.SessionSecurityTicket securityTicket = null)
        {
            #region UserCode
            var returnValue = new FR_Bool();

            #region Bank account

            var bankAccount = new CL1_ACC_BNK.ORM_ACC_BNK_BankAccount
            {
                ACC_BNK_BankAccountID = Guid.NewGuid(),
                Bank_RefID            = Parameter.BankID,
                BankAccountType_RefID = Parameter.BankAccountTypeID,
                Currency_RefID        = Parameter.CurrencyID,
                IBAN                = Parameter.IBAN,
                IsValid             = true,
                AccountOpenedAtDate = Parameter.OpenedAtDate,
                Tenant_RefID        = securityTicket.TenantID
            };
            bankAccount.Save(Connection, Transaction);

            #endregion

            #region Booking account

            var bookingAccountParam = new P_L3BA_CBA_1305
            {
                FiscalYearID         = Parameter.FiscalYearID,
                BookingAccountName   = Parameter.BookingAccountName,
                BookingAccountNumber = Parameter.BookingAccountName
            };
            Guid bookingAccountID = cls_Create_Booking_Account.Invoke(Connection, Transaction, bookingAccountParam, securityTicket).Result;

            #endregion

            #region Create Account assignment to booking account as "Bank Account"

            var accountAssignment = CL3_BookingAccounts.Utils.BookingAccountUtils.GetEmptyBankAccount();
            accountAssignment.ACC_BOK_BookingAccounts_Purpose_BP_AssignmentID = Guid.NewGuid();
            accountAssignment.BookingAccount_RefID                 = bookingAccountID;
            accountAssignment.BusinessParticipant_RefID            = Parameter.BusinessParticipantID;
            accountAssignment.If_L3_AssetAccount_BankAccount_RefID = bankAccount.ACC_BNK_BankAccountID;
            accountAssignment.Tenant_RefID = securityTicket.TenantID;

            accountAssignment.Save(Connection, Transaction);

            #endregion

            returnValue.Result = true;
            return(returnValue);

            #endregion UserCode
        }
예제 #2
0
        protected static FR_Guid Execute(DbConnection Connection, DbTransaction Transaction, P_L2B_SBA_0944 Parameter, CSV2Core.SessionSecurity.SessionSecurityTicket securityTicket = null)
        {
            var returnValue = new FR_Guid();

            var item = new CL1_ACC_BNK.ORM_ACC_BNK_BankAccount();

            if (Parameter.ACC_BNK_BankAccountID != Guid.Empty)
            {
                var result = item.Load(Connection, Transaction, Parameter.ACC_BNK_BankAccountID);
                if (result.Status != FR_Status.Success || item.ACC_BNK_BankAccountID == Guid.Empty)
                {
                    var error = new FR_Guid();
                    error.ErrorMessage = "No Such ID";
                    error.Status       = FR_Status.Error_Internal;
                    return(error);
                }
            }

            if (Parameter.IsDeleted == true)
            {
                item.IsDeleted = true;
                return(new FR_Guid(item.Save(Connection, Transaction), item.ACC_BNK_BankAccountID));
            }

            //Creation specific parameters (Tenant, Account ... )
            if (Parameter.ACC_BNK_BankAccountID == Guid.Empty)
            {
                item.Tenant_RefID = securityTicket.TenantID;
            }

            item.Bank_RefID            = Parameter.Bank_RefID;
            item.Currency_RefID        = Parameter.Currency_RefID;
            item.IBAN                  = Parameter.IBAN;
            item.AccountNumber         = Parameter.AccountNumber;
            item.BankAccountType_RefID = Parameter.BankAccountType_RefID;
            item.OwnerText             = Parameter.OwnerText;
            item.AccountOpenedAtDate   = Parameter.AccountOpenedAtDate;
            item.AccountClosedAtDate   = Parameter.AccountClosedAtDate;
            item.IsValid               = Parameter.IsValid;
            item.R_AccountBalance      = Parameter.R_AccountBalance;


            return(new FR_Guid(item.Save(Connection, Transaction), item.ACC_BNK_BankAccountID));
        }