银行账户管理(Bank Account Management)

1. 基本概念 & 系统配置

1.1 BANK(银行):

SAP系统中的BANK对应现实中的实体银行,例如“中国工商银行”,“中国农业银行”等。BANK Country和BANK Key唯一确定一个具体的银行。

维护银行的事务代码是FI01,FI02,FI03;对于S/4HANA, 亦可使用Fiori App "Manage Banks".

下面展示了一个银行的示例配置:

* Bank number标识实体银行的编号;SWIFT码是一个银行的全球唯一标识码,用于跨境金融业务。

1.2 House Bank (开户行)

SAP系统中House Bank代表着公司实际银行账户的开户银行,因此House Bank是关联于Company Code公司代码的。

维护House Bank的事务代码是FI12_HBANK; 对于S/4HANA, 亦可使用Fiori App "Manage Banks".

在定义House Bank时,需要指定对应的Bank。

当然,依据实际业务,公司可以有多个开户的银行,每个开户行也可有多个银行账户。

1.3 银行账户(Bank Account)& 开户行账户(House Bank Account)

SAP系统中的Bank Account也即对应实际的银行账户,通俗地讲,也即实际的银行卡号。

SAP系统中的House Bank Account定义在House Bank下面,一个House Bank Account对应这一个实际的Bank Account,以及一个相应的G/L account 总账科目。

SAP系统中的收付款交易可以House Bank和House Bank Account进行控制,进而再对应到实际的银行和银行账户上。通过总账科目,进而在SAP系统中对应着公司实际银行账户上面的金额变化。

在ECC中维护Bank Account可以通过事务代码是FI12_HBANK; 对于S/4HANA, 亦可使用Fiori App "Manage Banks",或者使用NWBC,通过role - SAP_FI_BL_BANK_MASTER_DATA进行维护。

 * 注:IBAN 是International Bank Account Number的缩写,它是由Bank Country + Bank Key + Bank Account生成的一组序号,可以全球唯一表示一个银行账户。

2. 业务场景

当定义完以上主数据后,为了便于理解,我们介绍几种相关的业务场景。

2.1 场景1 - 维护客户或供应商的银行信息

在Customer,Vender的主数据上,需要维护上其对应的银行信息,以便发生业务交易时进行实际的银行付款或扣款动作。

2.2 场景2 - 维护公司为某个特定客户或供应商的付款银行

在Customer,Vender的主数据上,可以维护上其公司的House Bank信息,在发生业务时,公司将会从这个House Bank对应的银行账户上完成付款或扣款动作。

在下图中,我们看到也可配置自动付款程序的Payment Method,这部分具体的业务逻辑和配置方式可以参见博客《SAP F110自动付款程序的相关配置》

2.3 场景3 -指定具体某张发票的House Bank

具体的原理类似于2.2, 在SAP系统中可以指定为有一张发票的具体收付款的House Bank。

2.4 场景4 -关联G/L account的主数据

House Bank和House Bank Account可以与对应的G/L account进行关联,进而在总账上反映银行账户上实际金额的变化。

3. 参考资料

关于SAP系统中的银行账户管理,本文只是进行的基本的介绍,更多的功能可以参照SAP快速访问菜单下的Accounting >> Financial Accounting  >> Banks 

或者,查看SAP最新的产品帮助文档。最新的Bank Account Management文档,在Cash Manage下面的Bank Relationship Mangement. 

  • 1
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
好的,银行账户管理系统是一个比较典型的应用程序,它主要用于管理银行客户的账户信息,包括账户余额、交易记录、利息计算等功能。以下是一个简单的银行账户管理系统C++代码示例: ```c++ #include <iostream> #include <string> #include <vector> using namespace std; // 定义账户类 class Account { private: string name; // 客户姓名 string account_number; // 账户号码 double balance; // 账户余额 public: Account(string name, string account_number, double balance) { this->name = name; this->account_number = account_number; this->balance = balance; } void deposit(double amount) { // 存款 balance += amount; } void withdraw(double amount) { // 取款 if (balance >= amount) { balance -= amount; } else { cout << "余额不足!" << endl; } } double get_balance() { // 获取余额 return balance; } string get_account_number() { // 获取账户号码 return account_number; } }; // 定义银行类 class Bank { private: vector<Account> accounts; // 存储所有账户信息 public: void add_account(Account account) { // 添加账户 accounts.push_back(account); } Account* find_account(string account_number) { // 查找账户 for (int i = 0; i < accounts.size(); i++) { if (accounts[i].get_account_number() == account_number) { return &accounts[i]; } } return NULL; } }; int main() { Bank bank; // 创建银行对象 // 添加账户 Account account1("张三", "10001", 1000); Account account2("李四", "10002", 2000); bank.add_account(account1); bank.add_account(account2); // 存款 Account* ptr = bank.find_account("10001"); if (ptr != NULL) { ptr->deposit(500); cout << "账户余额:" << ptr->get_balance() << endl; } // 取款 ptr = bank.find_account("10002"); if (ptr != NULL) { ptr->withdraw(1000); cout << "账户余额:" << ptr->get_balance() << endl; } return 0; } ``` 以上代码实现了一个简单的银行账户管理系统,包括账户类和银行类两个主要类,可以进行账户的添加、查找、存款、取款等操作。需要注意的是,这只是一个简单的示例代码,实际应用中还需要考虑更多的功能和安全性问题。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值