V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
V2EX 提问指南
Jtyczc
V2EX  ›  问与答

关于商品表多货币的设计以及收款对账表设计问题

  •  
  •   Jtyczc · 2023-02-06 00:47:35 +08:00 · 1064 次点击
    这是一个创建于 685 天前的主题,其中的信息可能已经有所发展或是发生改变。

    背景:

    公司在海外卖商品,进货价是人民币,售卖价是美元,须支持美元。

    公司原有一个系统,只是单货币系统(美元),并且是购买回来的,而且还是单机版,并不支持二次开发。

    每当汇率改时,老板在 Excel 计算好,售卖价,还要一个个录入,因为原系统不支持这种改法。

    现在需要重新写一个系统,方便管理。

    要求:

    1.支持多货币,不止是美元,还有当地货币。 2.支持一键汇率更改售卖价。 3.支持版本管理,因为客户退换货时,要按当时的汇率来退换货。

    方案 1:

    设计 3 个表,一个商品表,汇率表,版本表

    版本表:就版本号,ID ,时间,这几个字段,每当改汇率,或者改了商品,都+1

    汇率表存汇率关系

    商品表直接 rmb_purchase_price (进货价),gross_profit (毛利值),usd_sell_price (售卖价),版本号,来管理。 相关订单快照记录版本。

    改的时候直接改。

    方案 2:

    在方案 1 基础上,增加一个币种表,然后每种价格都要存在币种,值...

    改动商品表,purchase_price_type (进货价格币种), purchase_price_value (进货价格值)....

    问题

    方案 2 好像更复杂了,还是直接用方案 1 ?

    为什么提出方案 2 ,我估计做完这个功能,还要做一个对账管理功能,收款方式又是多种货币,USD ,RMB ,当地货币...,外汇...,收款账户又存在多个,美国 XX 银行账户,中国 XX 银行账户。

    因为现在公司财务是用 excel 来记录,并且设置好了复杂公式,每当新增行时,都要仔仔细细看公式对不对,心智负荷很大,而且有时候财务不小心弄错了,公式弄不回来,还要我去看。

    这个汇率不是国际实时汇率,而是汇率变动时,公司根据国际汇率来改自己系统里面的汇率,对此我应该怎么解决公司的问题呢?

    3 条回复    2023-02-06 10:12:26 +08:00
    geelaw
        1
    geelaw  
       2023-02-06 03:18:16 +08:00 via iPhone   ❤️ 1
    取决于你这套系统到底要发挥什么作用,它看起来并不是要取代账本——中国的会计准则要求只用一种本位币,所有非本位币都需要汇率转换后记账,然后每个周期都做汇兑损益的调整。

    如果是进销存管理的话倒还可以,你可以把所有非本位币都当成商品,因此任意时刻你的数据库都会显示每个 SKU 和每种货币存量是多少,然后你可以额外设置一个汇率用来显示(仅仅是显示)当前持有的非本位币的本位币价值。只有当你换汇的时候才真正锁定汇率(相当于你卖掉了非本位币)。
    justfindu
        2
    justfindu  
       2023-02-06 09:00:01 +08:00   ❤️ 1
    sku 价格本位币数值
    每日汇率表
    订单记录汇率, 币种, 本位币数值
    Felldeadbird
        3
    Felldeadbird  
       2023-02-06 10:12:26 +08:00
    如果给我做的话,我大概会这样设计:

    采购入库和产品 录入都是本币。 有一个多货币的汇率表,与本币挂钩汇率。

    下单时录入本币 + 当时汇率。 等于本订单最新的售价。

    退货时再拿当时的本币 和 现在的汇率 计算出 退货价格。
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   1482 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 31ms · UTC 17:08 · PVG 01:08 · LAX 09:08 · JFK 12:08
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.