销售税


[@more@]

销售税其实是一种附加费。R/3 SD中的定价因素也出现销售税。系统对很多国家规定了大量的税种。定价因素有:

州税
县税
城市销售税
管辖区税(在美国特别重要)
在加拿大有产品与服务税(GST)和省销售税(PST)
欧洲增值税(VAT

自动销售税计算

SD的自动销售税计算还考虑:

生意是国内的还是国外的(例如R/3 SD一般包括为美国、加拿大和澳大利亚贮存的销售税)
售达方的税种分类(有些非盈利项目免税)
产品税分类(有些不收税,或少收税)

你可以增加R/3 SD系统尚未规定的其它销售税。系统在销售订单中决定每一项目的税率。

纳税许可证号

你可以将承担特殊税种的客户的(该税种在某一阶段生效)许可证号包括在主数据中。当与诸如意大利和北美的客户做生意时将要求这些许可证。

来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/10230672/viewspace-972053/,如需转载,请注明出处,否则将追究法律责任。

转载于:http://blog.itpub.net/10230672/viewspace-972053/

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
好的,根据你的需求,我可以为你提供一个更新后的Sales类,并添加一个新的方法来实现上述功能。更新后的Sales类包括以下成员变量和方法: 成员变量: - items: 一个包含多个InvoiceItem对象的vector,用于存储所有商品销售信息。 方法: - add_item(name: string, quantity: int): void 功能:询问客户购买的商品名称和数量,并根据名称从InvoiceItem对象中获取成本价,然后计算出每个商品的单价,将商品名称、数量、单价、小计、销售税、销售额存储到一个新的InvoiceItem对象中,并将该对象添加到items中。 - remove_item(index: int): void 功能:从items中删除指定索引的InvoiceItem对象。 - get_subtotal(): double 功能:计算所有InvoiceItem对象的小计,并返回小计总价值。 - get_sales_tax(): double 功能:计算所有InvoiceItem对象的销售税,并返回销售税总价值。 - get_total(): double 功能:计算所有InvoiceItem对象的销售额,并返回销售额总价值。 - print_receipt(): void 功能:打印所有InvoiceItem对象的信息以及小计、销售税、销售额。 下面是一个基于上述设计方案的实现代码: ```cpp #include <iostream> #include <vector> #include "invoiceitem.h" class Sales { public: void add_item(std::string name, int quantity) { double cost_price = 0.0; // 获取成本价 for (auto item : items) { if (item.get_name() == name) { cost_price = item.get_cost_price(); break; } } double unit_price = cost_price * 1.3; // 计算单价 double subtotal = unit_price * quantity; // 计算小计 double sales_tax = subtotal * 0.06; // 计算销售税 double total = subtotal + sales_tax; // 计算销售额 InvoiceItem item(name, quantity, unit_price, subtotal, sales_tax, total); items.push_back(item); } void remove_item(int index) { items.erase(items.begin() + index); } double get_subtotal() { double subtotal = 0.0; for (auto item : items) { subtotal += item.get_subtotal(); } return subtotal; } double get_sales_tax() { double sales_tax = 0.0; for (auto item : items) { sales_tax += item.get_sales_tax(); } return sales_tax; } double get_total() { double total = 0.0; for (auto item : items) { total += item.get_total(); } return total; } void print_receipt() { for (int i = 0; i < items.size(); ++i) { std::cout << "Item " << i + 1 << ":" << std::endl; items[i].print(); std::cout << std::endl; } std::cout << "Subtotal: $" << get_subtotal() << std::endl; std::cout << "Sales Tax: $" << get_sales_tax() << std::endl; std::cout << "Total: $" << get_total() << std::endl; } private: std::vector<InvoiceItem> items; }; ``` 这里我添加了一个新的方法add_item来实现客户购买商品的询问、计算单价、小计、销售税、销售额等功能。在add_item方法中,我首先根据商品名称从已有的InvoiceItem对象中获取成本价,然后计算出每个商品的单价、小计、销售税和销售额,将这些信息存储到一个新的InvoiceItem对象中,并将该对象添加到items中。其他方法的实现与之前的版本基本相同,只是计算小计、销售税和销售额时需要使用InvoiceItem对象中的新成员变量。最后,在print_receipt方法中,我添加了打印小计、销售税和销售额的功能。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值