<?xml version="1.0" encoding="UTF-8"?><rss xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:atom="http://www.w3.org/2005/Atom" version="2.0">
    <channel>
        <title><![CDATA[张辰逸]]></title>
        <description><![CDATA[NetSuite 开发工程师]]></description>
        <link>https://zhangchenyi.fun</link>
        <generator>RSS for Node</generator>
        <lastBuildDate>Sat, 11 Apr 2026 20:38:54 GMT</lastBuildDate>
        <atom:link href="https://zhangchenyi.fun/atom" rel="self" type="application/rss+xml"/>
        <item>
            <title><![CDATA[关闭会计期间是存在重复日记账]]></title>
            <description><![CDATA[<h2>问题描述</h2>
<p>根据相关审计结果，财务团队需要做上一年的审计调整，于是重新打开上一年的会计期间。在关闭年度期间后发现：系统内存在多个重复的日记账，导致部分科目余额不平。</p>
<h2>问题分析</h2>
<ol>
<li>
<p>财务团队的操作是先关闭上一年 12 月的会计期间，再关闭上一年年度调整期间。</p>
</li>
<li>
<p>在关闭上一年年度调整期间时，执行了“重估未付外币金额”、“抵销公司间事务处理”等任务</p>
</li>
<li>
<p>经过核查发现， <a href="https://suiteanswers.custhelp.com/app/answers/detail/a_id/68949/kw/68949">SAID 68949</a> 文档中明确说明：<strong>用户不应在调整期间执行任何期间关账任务</strong>。如果在调整期间执行“抵销公司间事务处理”等操作，将导致重复分录。</p>
</li>
</ol>
<h2>解决方案</h2>
<ol>
<li>
<p>删除上一年年度调整期间的所有抵销日记账、外币重估记录</p>
</li>
<li>
<p>重新运行上一年 12 月会计期间的“重估未付外币金额”、“抵销公司间事务处理”等任务</p>
</li>
<li>
<p>再次关闭上一年年度调整期间，*<em>切记不要运行“重估未付外币金额”、“抵销公司间事务处理”等任务，而是直接标记为已完成</em>*。</p>
</li>
</ol>
<p><strong><em>注意事项：</em></strong></p>
<ul>
<li>
<p>“重估未付外币金额”时，选择顶层公司，并勾选包含子公司，可以为所有子公司运行货币重估</p>
</li>
<li>
<p>每个账簿都需要运行一次 （Local accounting book，IFRS accounting book) 货币重估</p>
</li>
</ul>
]]></description>
            <link>https://zhangchenyi.fun/closing_account_period_issue</link>
            <guid isPermaLink="false">4e048a95-0d9a-4699-bbe9-75da6e72217e</guid>
            <pubDate>Thu, 21 Aug 2025 13:08:00 GMT</pubDate>
        </item>
        <item>
            <title><![CDATA[NetSuite Date 类型字段失焦]]></title>
            <description><![CDATA[<h2>场景描述</h2>
<p>在 NetSuite 中不论是标准记录还是自定义记录，亦或是Suitelet创建的表单界面，Date 类型字段会存在以下问题：</p>
<blockquote>
<p>在 Client Script 的 <code>validateField(scriptContext)</code>函数中验证 Date 类型字段，光标聚焦在Date类型字段后无法失焦，导致无法填写其他字段。</p>
</blockquote>
<p>场景举例：</p>
<ol>
<li>
<p>校验 Date 字段是否早于/晚于某个日期值</p>
</li>
<li>
<p>使用confirm校验是否确认修 Date 字段</p>
</li>
</ol>
<h2>解决方案</h2>
<p><strong>核心：重写 Date 类型字段的事件监听器</strong></p>
<ol>
<li>
<p>创建一个 Custom Module 文件 (文件名：form_util.js)，用于存放封装的重写函</p>
<pre><code class="language-javascript">function overrideDateInputListener(form, dateFieldId) {
  var funcName = &quot;overrideDateInputListener&quot;;
  var funcSnippet =
    'var dateInput = document.querySelector(&quot;#' +
    dateFieldId +
    '&quot;);' +
    'var dateInputCacheValue = &quot;' +
    dateFieldId +
    '_cache_value&quot;;' +
    &quot;window[dateInputCacheValue] = dateInput.value;&quot; +
    &quot;dateInput.onblur = null;&quot; +
    &quot;dateInput.onchange = function () {&quot; +
    &quot;setWindowChanged(window, true);&quot; +
    &quot;this.checkvalid = false;&quot; +
    &quot;this.isvalid =&quot; +
    'validate_field(this, &quot;date&quot;, true, false, null, null, false, null, 8) &amp;&amp;' +
    '((this.shouldDoAlertInAdditionalValidation = true), nlapiValidateField(null, &quot;' +
    dateFieldId +
    '&quot;));' +
    &quot;if (this.isvalid) {&quot; +
    &quot;window[dateInputCacheValue] = dateInput.value;&quot; +
    'nlapiFieldChanged(null, &quot;' +
    dateFieldId +
    '&quot;);' +
    &quot;} else {&quot; +
    &quot;dateInput.value = window[dateInputCacheValue];&quot; +
    &quot;selectAndFocusField(this);&quot; +
    &quot;}&quot; +
    &quot;return this.isvalid;&quot; +
    &quot;};&quot;;
  injectScript(form, &quot;custpage_dateinput_snippet&quot; + Date.now(), funcName, funcSnippet);
}

function injectScript(form, fieldId, funcName, funcSnippet) {
  form.addField({
    type: &quot;INLINEHTML&quot;,
    id: fieldId,
    label: fieldId,
  }).defaultValue =
    '&lt;script type=&quot;text/javascript&quot;&gt;' +
    funcSnippet +
    'if(document.readyState==&quot;loading&quot;) {document.addEventListener(&quot;DOMContentLoaded&quot;, ' +
    funcName +
    &quot;);} else{&quot; +
    funcName +
    &quot;();}&lt;/script&gt;&quot;;
}
</code></pre>
</li>
<li>
<p>在User Event Script的 <code>beforeLoad(scriptContext)</code> 函数中调用<code>overrideDateInputListener()</code> 函数</p>
</li>
</ol>
<pre><code class="language-javascript">/**
 * @NApiVersion 2.1
 * @NScriptType UserEventScript
 */
define([&quot;./form_util&quot;], (cuxFormUtil) =&gt; {
  function beforeLoad(scriptContext) {
    if (scriptContext.type === &quot;create&quot; || scriptContext.type === &quot;edit&quot;) {
      cuxFormUtil.overrideDateInputListener(scriptContext.form, &quot;custrecord_sci_inv_date&quot;);
    }
  }

  return { beforeLoad };
});
</code></pre>
]]></description>
            <link>https://zhangchenyi.fun/date-field-loss-focus</link>
            <guid isPermaLink="false">2ff96088-cbcc-4f63-8299-c2ff1a5801fc</guid>
            <pubDate>Thu, 26 Jun 2025 17:58:00 GMT</pubDate>
        </item>
        <item>
            <title><![CDATA[SuiteScript 关闭或打开交易]]></title>
            <description><![CDATA[<h2>支持关闭的事务处理单据类型：</h2>
<ul>
<li>
<p>采购订单 Purchase Order</p>
</li>
<li>
<p>销售订单 Sales Order</p>
</li>
<li>
<p>Vendor Return Authorization 供应商退货授权</p>
</li>
<li>
<p>Return Authorization 退货授权</p>
</li>
<li>
<p>请购单 Requisition</p>
</li>
<li>
<p>购买合同 Purchase Contract</p>
</li>
<li>
<p>一揽子采购单 Blanket Purchase Order</p>
</li>
<li>
<p>报价单/估计单 Quote/Estimate</p>
</li>
<li>
<p>转移单 Transfer Order</p>
</li>
<li>
<p>工单 Work Order</p>
</li>
</ul>
<blockquote>
<p>⚠️注意：上述单据类型是个人根据观察总结，不一定详尽</p>
</blockquote>
<h2>关闭/打开交易</h2>
<blockquote>
<p>核心：勾选单据行上所有的“关闭”字段</p>
</blockquote>
<pre><code class="language-javascript">const rec = record.load({ type: record.Type.SALES_ORDER, id: transactionID, isDynamic: true });

var lineCount = rec.getLineCount({ sublistId: 'item' });
for (var i = 0; i &lt;= lineCount - 1; i++) {
    var sublistLine = rec.selectLine({ sublistId: 'item', line: i });
  // 关闭单据
    rec.setCurrentSublistValue({ sublistId: 'item', fieldId: 'isclosed', value: true }); 
  // 打开单据
  rec.setCurrentSublistValue({ sublistId: 'item', fieldId: 'isclosed', value: false });
    rec.commitLine({ sublistId: 'item' });
}

rec.save({ enableSourcing: true, ignoreMandatoryFields: true });
</code></pre>
]]></description>
            <link>https://zhangchenyi.fun/close-transaction</link>
            <guid isPermaLink="false">b5fcc4cd-24f3-4405-9f9d-9666229df1cc</guid>
            <pubDate>Fri, 11 Apr 2025 16:15:00 GMT</pubDate>
        </item>
        <item>
            <title><![CDATA[融资租赁与经营租赁]]></title>
            <description><![CDATA[<h2>什么是融资租赁</h2>
<p><strong>融资租赁（Finance Lease）<strong>是一种</strong>长期租赁</strong>方式，通常用于企业或个人通过租赁方式获得设备、车辆或其他资产的使用权，而无需一次性支付全部购买成本。在融资租赁中，租赁公司（出租方）购买资产并将其出租给承租人（使用方），承租人则需按约定支付租金，通常覆盖资产成本和融资成本。</p>
<p><strong>融资租赁的主要特点包括：</strong></p>
<ol>
<li>
<p><strong>长期性</strong>：租期较长，通常接近资产的经济寿命。</p>
</li>
<li>
<p><strong>不可撤销</strong>：租赁合同一般不可提前终止，承租人需履行全部租金支付义务。</p>
</li>
<li>
<p><strong>所有权与使用权分离</strong>：租赁期内，资产所有权归出租方，但使用权归承租人。</p>
</li>
<li>
<p><strong>最终购买选择权</strong>：在租赁期结束时，承租人通常可以选择购买资产（以象征性价格，如1元），续租或归还资产。</p>
</li>
<li>
<p><strong>财务处理</strong>：融资租赁通常被视为资产负债表内融资，承租人需在财务报表中确认租赁资产和相应负债。</p>
</li>
</ol>
<p>融资租赁广泛用于企业设备采购、车辆租赁和基础设施建设等领域，有助于企业优化现金流管理、减少资本支出并提升资产使用效率。</p>
<h2>什么是经营租赁</h2>
<p><strong>经营租赁（Operating Lease）<strong>是一种</strong>短期或中期租赁</strong>方式，承租人仅在租赁期内享有资产的使用权，而资产的所有权始终归出租方所有。经营租赁通常用于企业或个人在不希望承担资产所有权责任的情况下获取设备、车辆或其他资产的使用权。</p>
<p><strong>经营租赁的主要特点：</strong></p>
<ol>
<li>
<p><strong>短期或中期</strong>：租赁期通常比资产的经济寿命短，租期可以灵活调整。</p>
</li>
<li>
<p><strong>可撤销</strong>：承租人通常可以在符合合同条件的情况下提前终止租赁。</p>
</li>
<li>
<p><strong>资产所有权归出租方</strong>：承租人仅享有使用权，不记录资产在资产负债表上（符合一定条件时）。</p>
</li>
<li>
<p><strong>租赁期结束后</strong>：承租人可选择续租、归还资产或换新资产。</p>
</li>
<li>
<p><strong>财务处理</strong>：按照<strong>新租赁会计准则（如IFRS 16）</strong>，大部分经营租赁需要计入资产负债表，但短期租赁或低价值租赁可作为<strong>经营费用</strong>直接计入损益表。</p>
</li>
</ol>
<h2>两者对比</h2>
<p>&lt;table&gt;&lt;tbody&gt;&lt;tr&gt;&lt;td&gt;&lt;p&gt;&lt;strong&gt;特点&lt;/strong&gt;&lt;/p&gt;&lt;/td&gt;&lt;td&gt;&lt;p&gt;&lt;strong&gt;经营租赁（Operating Lease）&lt;/strong&gt;&lt;/p&gt;&lt;/td&gt;&lt;td&gt;&lt;p&gt;&lt;strong&gt;融资租赁（Finance Lease）&lt;/strong&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;p&gt;&lt;strong&gt;租赁期&lt;/strong&gt;&lt;/p&gt;&lt;/td&gt;&lt;td&gt;&lt;p&gt;短期或中期&lt;/p&gt;&lt;/td&gt;&lt;td&gt;&lt;p&gt;长期，接近资产经济寿命&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;p&gt;&lt;strong&gt;资产所有权&lt;/strong&gt;&lt;/p&gt;&lt;/td&gt;&lt;td&gt;&lt;p&gt;归出租方&lt;/p&gt;&lt;/td&gt;&lt;td&gt;&lt;p&gt;租期结束后通常归承租人&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;p&gt;&lt;strong&gt;合同可撤销性&lt;/strong&gt;&lt;/p&gt;&lt;/td&gt;&lt;td&gt;&lt;p&gt;一般可撤销&lt;/p&gt;&lt;/td&gt;&lt;td&gt;&lt;p&gt;通常不可撤销&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;p&gt;&lt;strong&gt;财务处理&lt;/strong&gt;&lt;/p&gt;&lt;/td&gt;&lt;td&gt;&lt;p&gt;可能计入资产负债表（IFRS 16）&lt;/p&gt;&lt;/td&gt;&lt;td&gt;&lt;p&gt;计入资产负债表&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;p&gt;&lt;strong&gt;维护责任&lt;/strong&gt;&lt;/p&gt;&lt;/td&gt;&lt;td&gt;&lt;p&gt;出租方负责&lt;/p&gt;&lt;/td&gt;&lt;td&gt;&lt;p&gt;承租人通常负责&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;</p>
<p>总结：经营租赁和融资租赁都在租赁期内拥有资产使用权，经营租赁适合那些希望灵活使用资产、<strong>避免资产折旧</strong>和维护成本的企业，而融资租赁更适合希望最终<strong>拥有资产所有权</strong>的企业</p>
]]></description>
            <link>https://zhangchenyi.fun/finance-lease-operating-lease</link>
            <guid isPermaLink="false">dded18e1-8a7b-4e0e-a10a-481eff2ac895</guid>
            <pubDate>Thu, 27 Mar 2025 17:44:00 GMT</pubDate>
        </item>
        <item>
            <title><![CDATA[货币与汇率的运行机制]]></title>
            <description><![CDATA[<h2>1 前言</h2>
<p>我们在 NetSuite 中常常会遇到下列的问题：</p>
<ol>
<li>
<p>为什么系统中的总账报表、合并报表和事务处理单据的金额不一致？</p>
</li>
<li>
<p>为什么系统中的总账报表、合并报表中的借贷金额会不平？</p>
</li>
<li>
<p>为什么事务处理搜索中的金额字段和事务处理单据的金额字段不一致？</p>
</li>
<li>
<p>……</p>
</li>
</ol>
<p>那么产生这些问题的原因的是什么呢？</p>
<p>要回答上述的这些问题，我们需要了解 NetSuite 中<strong>货币和汇率之间是什么关系</strong>？以及<strong>汇率类型</strong>是如何决定事务处理金额在总账报告、合并报告中的表现方式的？</p>
<h2>2 基础机制 *</h2>
<p>在弄清楚 NetSuite 报告中的货币影响时，必须先了解货币的 3 个基础机制：</p>
<ul>
<li>
<p>货币转换：当事务处理单据中的交易货币与子公司基础货币的货币不同，NetSuite 记录<strong>总账影响</strong>时，将按照汇率字段中包含的汇率将金额转换为基础货币金额。<img src="https://static.gridea.dev/6ca565dd-d5f9-4ffb-91cb-fd2c69b1d25f/X3hpQ0NqN.png" alt=""></p>
</li>
<li>
<p>货币重估：对现有外币事务处理进行重新估值。<img src="https://static.gridea.dev/6ca565dd-d5f9-4ffb-91cb-fd2c69b1d25f/KzE_PsELR.png" alt=""></p>
<p>货币重估其实是计算汇兑损益，汇兑损益有 2 种：</p>
<ol>
<li>
<p>已实现的汇兑损益：指在外币交易完成并结算后，根据实际的兑换汇率差异导致的损益。例如，公司购买外国货币支付货款，然后再将外国货币兑换成本地货币时，如果实际兑换汇率高于购买时的汇率，将导致已实现的汇兑损失；反之则为已实现的汇兑盈利</p>
</li>
<li>
<p>未实现的汇兑损益：指在外币交易尚未完成或结算前，根据当前市场汇率变动所引起的资产或负债价值变动而导致的损益。例如，公司持有外币资产或负债，但尚未进行兑换或结算，此时外币价值的变动将导致未实现的汇兑损益。</p>
</li>
</ol>
</li>
<li>
<p>货币换算：运行合并报表或已保存搜索时，子公司货币金额是转换为有权访问最近公共祖先的货币。值得注意的是：与前两个机制相比，该机制不是事务性质的，仅仅是报告的表现方式。<br>
例如，子公司基础货币为欧元，母公司基础货币为美元，运行合并报表时，子公司的欧元在报表中将被转换为美元。</p>
</li>
</ul>
<h4>2.1 什么是有权访问最近公共祖先（LCP：Lowest Common Parent）</h4>
<p>假设公司层级如下：<img src="https://static.gridea.dev/6ca565dd-d5f9-4ffb-91cb-fd2c69b1d25f/P5RnlMOFk.png" alt=""></p>
<p>如果，我们只能访问新加坡和日本子公司，那么所有货币金额均以英镑为单位，因为 Wolfe UK 是这两家子公司的 LCP。如果我们可以访问日本和德国子公司，货币金额将以美元显示。</p>
<h2>3 汇率表</h2>
<p>NetSuite 中有 2 套汇率表，其中<strong>货币汇率表</strong>用于<strong>货币重估</strong>，<strong>合并汇率表</strong>用于<strong>货币换算</strong>。</p>
<blockquote>
<p>货币转换使用事务处理单据中的汇率字段值，该字段值来源于货币汇率表，但可以手动修改。</p>
</blockquote>
<table>
<thead>
<tr>
<th></th>
<th><strong>货币汇率表</strong></th>
<th><strong>合并汇率表</strong></th>
</tr>
</thead>
<tbody>
<tr>
<td>应用</td>
<td>事务处理</td>
<td>合并报告;&lt;br/&gt;事务处理的已保存搜索</td>
</tr>
<tr>
<td>日期范围</td>
<td>自生效日期起</td>
<td>会计期间</td>
</tr>
<tr>
<td>转换机制</td>
<td>子公司的基础货币和事务处理的交易货币之间转换</td>
<td>子公司之间的基础货币转换</td>
</tr>
<tr>
<td>系统路径</td>
<td>列表 &gt; 会计 &gt; 货币汇率 <img src="https://static.gridea.dev/6ca565dd-d5f9-4ffb-91cb-fd2c69b1d25f/tR-cqxdR7.png" alt=""></td>
<td>列表 &gt; 会计 &gt; 合并汇率<img src="https://static.gridea.dev/6ca565dd-d5f9-4ffb-91cb-fd2c69b1d25f/PwS_X6DB2.png" alt=""></td>
</tr>
<tr>
<td>更新机制</td>
<td>手动添加新的货币汇率;&lt;br/&gt;使用货币汇率集成功能进行每日自动更新</td>
<td>手动编辑合并汇率表;&lt;br/&gt;点击合并汇率表的自动计算</td>
</tr>
</tbody>
</table>
<h3>3.1 货币汇率表转换机制示例</h3>
<p>货币汇率表只能维护本位币与本位币、本位币与非本位币之间的汇率<img src="https://static.gridea.dev/6ca565dd-d5f9-4ffb-91cb-fd2c69b1d25f/CNW95Xckf.png" alt="">假设系统有如下币种：</p>
<ul>
<li>
<p>USD，本位币</p>
</li>
<li>
<p>CNY，本位币</p>
</li>
<li>
<p>GBP，非本位币</p>
</li>
</ul>
<p>那么就会产生如下的货币汇率表</p>
<table>
<thead>
<tr>
<th>本位币</th>
<th>原币</th>
<th>汇率</th>
</tr>
</thead>
<tbody>
<tr>
<td>USD</td>
<td>CNY</td>
<td>0.14104186</td>
</tr>
<tr>
<td>USD</td>
<td>GBP</td>
<td>1.31309726</td>
</tr>
<tr>
<td>CNY</td>
<td>USD</td>
<td>7.09009373</td>
</tr>
<tr>
<td>CNY</td>
<td>GBP</td>
<td>9.30998263</td>
</tr>
</tbody>
</table>
<h3>3.2 合并汇率转换机制示例</h3>
<p>假设公司层级结构如下：</p>
<ul>
<li>
<p>A 公司</p>
<ul>
<li>
<p>B 公司</p>
</li>
<li>
<p>C 公司</p>
<ul>
<li>
<p>D 公司</p>
</li>
<li>
<p>E 公司</p>
</li>
</ul>
</li>
</ul>
</li>
</ul>
<table>
<thead>
<tr>
<th>来源公司</th>
<th>目标公司</th>
<th>是否为间接汇率</th>
<th>当前汇率</th>
<th>平均汇率</th>
<th>历史汇率</th>
</tr>
</thead>
<tbody>
<tr>
<td>D</td>
<td>C</td>
<td>否</td>
<td>2.1</td>
<td>2.1</td>
<td>2.1</td>
</tr>
<tr>
<td>E</td>
<td>C</td>
<td>否</td>
<td>3.4</td>
<td>3.4</td>
<td>3.4</td>
</tr>
<tr>
<td>C</td>
<td>A</td>
<td>否</td>
<td>1.5</td>
<td>1.5</td>
<td>1.5</td>
</tr>
<tr>
<td>D</td>
<td>A</td>
<td>是</td>
<td>3.15</td>
<td>3.15</td>
<td>3.15</td>
</tr>
<tr>
<td>E</td>
<td>A</td>
<td>是</td>
<td>7.14</td>
<td>7.14</td>
<td>7.14</td>
</tr>
</tbody>
</table>
<blockquote>
<p>合并汇率有 3 种类型，上表为了方便计算，将 3 种汇率类型值统一。实际情况中，3 种汇率类型值可能不相同</p>
</blockquote>
<p>从公司层级角度来看，合并汇率分为 2 种：</p>
<ul>
<li>
<p>直接汇率： 母公司和直接子公司之间的汇率，例如 A 公司和 B 公司。该汇率可以直接编辑或点击自动计算</p>
</li>
<li>
<p>间接汇率（派生汇率）：超过一级的公司之间的汇率，例如 A 公司和 D 公司。该汇率由系统更新</p>
</li>
</ul>
<blockquote>
<p>⚠️抵销公司的汇率无法被编辑</p>
</blockquote>
<p>间接汇率等于子公司到最顶层母公司之间汇率的乘积。<br>
例：A公司与D 公司的合并汇率 = A 公司与 C 公司的合并汇率 x C 公司与 D 公司汇率 = 1.5 x 2.1 = 3.15</p>
<h2>4 合并汇率 *</h2>
<h3>4.1 合并汇率类型</h3>
<p>合并汇率表有 3 种类型：</p>
<ul>
<li>
<p><strong>即期（Current）</strong> ：取截至报告期间最后一天的汇率，通常用于资产类科目和负债类科目</p>
</li>
<li>
<p><strong>平均（Average）</strong> ：取报告期间的加权平均汇率，通常用于费用类科目、收入类科目</p>
</li>
<li>
<p><strong>历史（Historical）</strong>：取报告期间的加权平均汇率，通常用于权益类科目</p>
</li>
</ul>
<blockquote>
<p>关于科目类型，可以查看<a href="https://www.yuque.com/chenyi.zhang/an1m/cfafwu7zwpoh4g2s">总账模型</a>的内容</p>
</blockquote>
<h3>4.2 合并汇率计算逻辑与示例</h3>
<p>假设公司层级结构如下：</p>
<ul>
<li>
<p>A 公司为母公司，本位币为美元 USD（$)</p>
</li>
<li>
<p>B 公司为子公司，本位币为英镑 GBP（£）</p>
</li>
</ul>
<p>B 公司 1 月份的交易情况如下表所示：</p>
<table>
<thead>
<tr>
<th><strong>交易日期</strong></th>
<th><strong>货币汇率</strong></th>
<th><strong>金额</strong></th>
<th><strong>科目的一般汇率类型</strong></th>
</tr>
</thead>
<tbody>
<tr>
<td>1 月 1 日</td>
<td>2</td>
<td>£100</td>
<td>平均（Average）</td>
</tr>
<tr>
<td>1 月 1 日</td>
<td>2</td>
<td>£300</td>
<td>历史（Historical）</td>
</tr>
<tr>
<td>1 月 15 日</td>
<td>2.5</td>
<td>£200</td>
<td>平均（Average）</td>
</tr>
<tr>
<td>1 月 15 日</td>
<td>2.5</td>
<td>£200</td>
<td>历史（Historical）</td>
</tr>
<tr>
<td>1 月 31 日</td>
<td>3</td>
<td>£300</td>
<td>平均（Average）</td>
</tr>
<tr>
<td>1 月 31 日</td>
<td>3</td>
<td>£100</td>
<td>历史（Historical）</td>
</tr>
</tbody>
</table>
<ul>
<li>
<p>当前汇率：使用<strong>截止期末</strong>（1 月 31 日）货币汇率列表中的英镑 GBP 兑美元 USD 汇率<br>
当前汇率 = 3</p>
</li>
<li>
<p>平均汇率：是基于科目的一般汇率类型为“<strong>平均</strong>”且<strong>已过账</strong>的所有交易金额的加权平均值。每笔交易的货币汇率为交易当日有效的英镑 GBP 兑美元 USD 汇率。<br>
平均汇率 = (2 × 100 + 2.5 × 200 + 3 × 300) ÷ (100 + 200 + 300) = 2.6666667</p>
</li>
<li>
<p>历史汇率：是基于科目的一般汇率类型为“<strong>历史</strong>”且<strong>已过账</strong>的所有交易金额的加权平均值。每笔交易的货币汇率为交易当日有效的英镑 GBP 兑美元 USD 汇率。<br>
历史汇率 = (2 × 300 + 2.5 × 200 + 3 × 100) ÷ (300 + 200 + 100) = 2.3333333</p>
</li>
</ul>
<h3>4.3 科目表中的合并汇率类型</h3>
<p>每个科目类型都有 2 个合并汇率类型值：</p>
<ul>
<li>
<p>现金流汇率类型 Cash Flow Rate Type：用于现金流量报表</p>
</li>
<li>
<p>一般汇率类型 General Rate Type：用于财务报表、已保存搜索等</p>
</li>
</ul>
<p><img src="https://static.gridea.dev/6ca565dd-d5f9-4ffb-91cb-fd2c69b1d25f/rUDJsq2Bv.png" alt=""></p>
<h3>4.4 累积换算调整 Cumulative Translation Adjustment</h3>
<p>NetSuite 在<strong>报表</strong>中使用<strong>合并汇率类型</strong>进行货币换算，不同类型的科目采用的汇率不同，因此在本币时报表是平的，换算为外币时可能会导致报表不平。</p>
<p>针对这种情况，在财务报表中需要一个特殊调整科目进行平衡，这个科目就是累积折算调整（CTA：Cumulative Translation Adjustment）</p>
<blockquote>
<ul>
<li>
<p>CTA 代表合并汇率类型与实际汇率之间的差异所产生的金额</p>
</li>
<li>
<p>CTA 本质是对子公司的净投资产生的累计外币收益或损失</p>
</li>
</ul>
</blockquote>
<p><img src="https://static.gridea.dev/6ca565dd-d5f9-4ffb-91cb-fd2c69b1d25f/fP_dcbJ99.png" alt=""></p>
<p>CTA 用于跨不同合并汇率类型的科目进行合并的地方，例如合并试算表、合并资产负债表等。例如：</p>
<ul>
<li>
<p>在资产负债表中对应标题为“累计折算调整”的行</p>
</li>
<li>
<p>在现金流量表中对应标题为“汇率对现金的影响”的行</p>
</li>
</ul>
<blockquote>
<p>报告中的 CTA 科目金额是动态计算的，并非真正过账的数据</p>
</blockquote>
<p><img src="https://static.gridea.dev/6ca565dd-d5f9-4ffb-91cb-fd2c69b1d25f/jqANXphJh.png" alt=""><img src="https://static.gridea.dev/6ca565dd-d5f9-4ffb-91cb-fd2c69b1d25f/wxmkRwy3Y.png" alt="">在货品、税码、关联记录或大多数事务处理中无法选择 CTA 科目，但在日记帐分录中可以选择 CTA 科目。<img src="https://static.gridea.dev/6ca565dd-d5f9-4ffb-91cb-fd2c69b1d25f/DKKck5DwJ.png" alt=""></p>
<h4>4.4.1 CTA 计算逻辑与示例</h4>
<p>假设公司层级结构如下：</p>
<ul>
<li>
<p>A 公司为母公司，本位币为美元 USD（$)</p>
</li>
<li>
<p>B 公司为子公司，本位币为英镑 GBP（£）</p>
</li>
</ul>
<p>B 公司的合并资产负债表如下：</p>
<table>
<thead>
<tr>
<th></th>
<th><strong>金额(GBP)</strong></th>
<th><strong>综合费率类型</strong></th>
<th><strong>合并汇率</strong></th>
<th><strong>计算</strong></th>
<th><strong>合并金额(USD)</strong></th>
</tr>
</thead>
<tbody>
<tr>
<td>Assets 资产</td>
<td>£250</td>
<td>当前</td>
<td>2.0</td>
<td>250 × 2</td>
<td>$500</td>
</tr>
<tr>
<td>Liabilities 负债</td>
<td>(£100)</td>
<td>当前</td>
<td>2.0</td>
<td>100 × 2</td>
<td>($200)</td>
</tr>
<tr>
<td>Retained Earnings 留存收益</td>
<td>(£100)</td>
<td>平均</td>
<td>2.5</td>
<td>100 × 2.5</td>
<td>($250)</td>
</tr>
<tr>
<td>Equity 权益</td>
<td>(£50)</td>
<td>历史</td>
<td>3.0</td>
<td>50 × 3</td>
<td>($150)</td>
</tr>
<tr>
<td>Balance in GBP 英镑余额</td>
<td>£0</td>
<td></td>
<td></td>
<td>CTA</td>
<td>($100)</td>
</tr>
</tbody>
</table>
<p>CTA 计算公式：CTA = 净资产 × 当前汇率 -（ 所有者权益 × 历史汇率 + 净利 × 平均汇率）</p>
<p>代入上表数据：CTA = ( 250 * 2 - 100 * 2 ) - ( 100 * 2.5 + 50 * 3 ) = -100</p>
<h2>5 报表中的货币机制</h2>
<p><img src="https://cdn.nlark.com/yuque/0/2025/png/1563353/1737473543350-862f4af4-f410-422b-9145-9d7573721488.png" alt=""><img src="https://static.gridea.dev/6ca565dd-d5f9-4ffb-91cb-fd2c69b1d25f/5WNhzCZJq.png" alt=""></p>
<p>报表中没有直接提供设置合并汇率类型的选项，而是使用科目中设置的汇率类型。货币使用 LCP 货币。</p>
<ul>
<li>
<p>一般汇率类型：</p>
<ul>
<li>
<p>即期（Current） ：资产类科目、负债类科目</p>
</li>
<li>
<p>平均（Average） ：费用类科目、收入类科目</p>
</li>
<li>
<p>历史（Historical）：权益类科目</p>
</li>
</ul>
</li>
<li>
<p>现金流汇率类型：</p>
<ul>
<li>平均（Average） ：除权益类科目之外的所有科目</li>
</ul>
</li>
</ul>
<blockquote>
<p><strong>总结：</strong></p>
<ul>
<li>
<p>资产负债表由资产类科目、负债类科目、权益类科目组成：</p>
<ul>
<li>
<p>资产类科目和负债类科目使用<strong>当前汇率</strong></p>
</li>
<li>
<p>权益类科目使用<strong>历史汇率</strong></p>
</li>
</ul>
</li>
<li>
<p>利润表（损益表）有费用类科目、收入类科目组成，都使用<strong>平均汇率</strong></p>
</li>
<li>
<p>总账报表则根据实际科目类型，使用对应的汇率类型</p>
</li>
</ul>
</blockquote>
<p><strong><em>个人思考</em></strong></p>
<blockquote>
<p>以下皆为简单理解，更加深层次的原因需要更多的财务知识，暂不作深究</p>
</blockquote>
<ol>
<li>为什么利润表使用平均汇率？</li>
</ol>
<p>利润表是反映企业在<strong>一段会计期间</strong>的经营成果的财务报表。由于它反映的是某一期间的情况，所以需要使用平均汇率。</p>
<ol start="2">
<li>为什么权益类科目使用历史汇率？<br>
资产负债表与利润表存在联系，其中利润表的净利润部分与资产负债表的所有者权益部分（权益类科目所在部分）存在勾稽关系，为了保证两个报表核对准确，所以权益类科目使用历史汇率。</li>
</ol>
<blockquote>
<ul>
<li>
<p>历史汇率和平均汇率都是加权平均值</p>
</li>
<li>
<p>留存收益 也称 未分配利润</p>
</li>
</ul>
</blockquote>
<p><img src="https://static.gridea.dev/6ca565dd-d5f9-4ffb-91cb-fd2c69b1d25f/8t7-sI9NI.png" alt=""></p>
<h2>6 事务处理搜索中的货币机制</h2>
<p>事务处理搜索的<strong>结果子选项卡中的合并汇率</strong>字段可以让我们选择合并汇率类型，这一点相对报表有所不同，货币同样是 LCP 货币。</p>
<ul>
<li>
<p><strong>即期（Current）</strong> ：使用事务处理发生期间的历史综合汇率</p>
</li>
<li>
<p><strong>平均（Average）</strong> ：使用所选日期范围/期间的当前合并汇率，如果未选择期间或日期，则使用运行搜索日期的当前汇率</p>
</li>
<li>
<p><strong>历史（Historical）</strong>：使用事务处理发生期间的历史合并汇率</p>
</li>
<li>
<p><strong>按科目（Per-Account）</strong>：使用为事务处理中科目的一般汇率类型，可以是平均汇率、当前汇率或历史汇率。<strong>此选项是默认选项。</strong></p>
</li>
<li>
<p>**无（None）：**使用事务处理单据上的子公司基础货币，汇率为事务处理单据中的汇率字段值</p>
</li>
</ul>
<p><img src="https://static.gridea.dev/6ca565dd-d5f9-4ffb-91cb-fd2c69b1d25f/1AgeoCJo5.png" alt=""></p>
<h2>7 数据集和工作簿中的货币机制</h2>
<p>数据集和工作簿中的金额字段可能会显示多种货币的数据，要统一查看这些金额字段，必须将字段值合并或转换为单一货币：</p>
<ul>
<li>
<p>在事务处理会计行（TransactionAccountingLine) 中，金额字段中的货币值以事务处理子公司的基础货币存储。<strong>事务处理会计行中的金额字段只能进行合并</strong>，默认情况下，当工作簿表格视图、数据透视表和图表中包含交易会计行的金额字段时，将启用<strong>货币合并</strong>。</p>
</li>
<li>
<p>在事务处理和事务处理行中，金额字段中的货币值以事务处理的货币存储。<strong>事务处理和事务处理行金额字段值只能进行转换</strong>。货币转换是工作簿中提供的附加工具，能够将字段的值从一种货币转另一种货币。</p>
</li>
</ul>
<h3>7.1 货币合并</h3>
<p>货币合并功能使用的科目中的一般汇率类型在合并汇率表中对应的汇率值</p>
<h4>7.1.1 自定义公式字段的货币合并</h4>
<p>在数据集生成器中，可以使用上下文值<code>#currency_consolidated</code>创建自定义公式字段合并货币字段值</p>
<p>例如：合并交易会计行记录类型中的净额字段值，可以使用以下公式：</p>
<pre><code class="language-javascript">// 事务处理行关联事务处理会计行的净额
TO_NUMBER({transactionlines.accountingimpact.netamount#currency_consolidated})
</code></pre>
<p><img src="https://static.gridea.dev/6ca565dd-d5f9-4ffb-91cb-fd2c69b1d25f/s4QNuzDsF.png" alt=""></p>
<h4>7.1.2 工作簿界面的货币合并</h4>
<p>在工作簿界面中，事务处理会计行金额字段默认启用货币合并。如果要停用，可以在数据集中找到事务处理会计行金额字段，然后去掉筛选器窗口的合并字段框。<img src="https://static.gridea.dev/6ca565dd-d5f9-4ffb-91cb-fd2c69b1d25f/87s-Lzgps.png" alt=""></p>
<h3>7.2 货币转换</h3>
<p>货币转换功能可以将金额字段的值转换为任一货币，使用的是货币汇率表中的汇率值</p>
<h4>7.2.1 自定义公式字段的货币转换</h4>
<p>在数据集生成器中，可以使用上下文值<code>#converted</code>创建自定义公式字段转换货币字段值</p>
<p>例如：发票的支付金额，可以使用以公式：</p>
<pre><code class="language-javascript">TO_NUMBER({foreignamountpaid#converted})
</code></pre>
<p><img src="https://static.gridea.dev/6ca565dd-d5f9-4ffb-91cb-fd2c69b1d25f/9B3AgFyR5.png" alt=""><code>#converted</code>还支持在公式中指定货币、指定日期的汇率，日期必须使用<code>YYYY-MM-DD</code>格式</p>
<pre><code class="language-javascript">// 1是USD的内部ID
TO_NUMBER({foreigntotal#converted[1]})
TO_NUMBER({foreigntotal#converted[1;2024-01-30]});
</code></pre>
<p><img src="https://static.gridea.dev/6ca565dd-d5f9-4ffb-91cb-fd2c69b1d25f/wEZJHULAV.png" alt=""></p>
<h4>7.2.2 工作簿界面的货币转换</h4>
<p>我们可以从工作簿界面转换事务处理和事务处理行中金额字段的货币值。需要注意的是，该功能在数据集中不可用。<br>
要从工作簿界面应用转换，可以单击字段旁边的菜单，然后选择货币，提供了以下选项：</p>
<ul>
<li>
<p>显示原始内容：以事务处理所用的原始货币显示每笔金额。在表视图和数据透视表中，这是事务处理和事务处理行金额字段的默认选项。</p>
</li>
<li>
<p>应用转换：使用在“转换为窗口”中选择的货币和日期转换每个金额。在图表中，这是事务处理和事务处理行金额字段的默认选项。</p>
</li>
<li>
<p>转换选项： 打开“转换为窗口”，然后选择“应用转换”选项时要使用的货币和日期。<strong>换算中使用的汇率取自货币汇率表。</strong></p>
</li>
</ul>
<p><img src="https://static.gridea.dev/6ca565dd-d5f9-4ffb-91cb-fd2c69b1d25f/DpzMP2CCc.png" alt=""><img src="https://static.gridea.dev/6ca565dd-d5f9-4ffb-91cb-fd2c69b1d25f/mT30MDznW.png" alt=""></p>
<h2>8 SuiteQL 中的货币机制</h2>
<p>SuiteQL 提供了 <code>BUILTIN.CONSOLIDATE</code>和 <code>BUILTIN.CURRENCY_CONVERT</code>两个内置函数用于货币值操作</p>
<h3>8.1 BUILTIN.CONSOLIDATE</h3>
<blockquote>
<p>BUILTIN.CONSOLIDATE 函数相当于工作簿中的 <code>currency_consolidated</code>，只能对<strong>事务处理会计行</strong>中的金额字段进行转换</p>
</blockquote>
<p>BUILTIN.CONSOLIDATE 函数的作用是将字段中存储的货币金额转换为目标货币。使用示例：</p>
<pre><code class="language-javascript">BUILTIN.CONSOLIDATE(TransactionAccountingLine.Amount, 'LEDGER', 'DEFAULT', 'DEFAULT', 1, 325, 'DEFAULT')
</code></pre>
<p>BUILTIN.CONSOLIDATE 函数使用下列参数：</p>
<ol>
<li>
<p>原始金额字段名称</p>
</li>
<li>
<p>视图类型，选项值：</p>
<ul>
<li>
<p><code>LEDGER</code></p>
</li>
<li>
<p><code>INCOME</code></p>
</li>
</ul>
</li>
</ol>
<blockquote>
<p>目前只能根据名称推测：LEDGER 是总账、INCOME 是损益表<br>
<strong>这两者具体有什么区别？目前所能查阅的所有资料都没有说明！！！</strong></p>
</blockquote>
<ol start="3">
<li>
<p>合并汇率类型，选项值：</p>
<ul>
<li>
<p><code>DEFAULT</code></p>
</li>
<li>
<p><code>STANDARD</code>，合并报告使用“合并汇率”表</p>
</li>
<li>
<p><code>BUDGET</code>，包含预算和实际金额的报告（预算损益表、预算损益表详细信息以及预算与实际）使用单独的预算汇率表来换算预算金额</p>
</li>
</ul>
</li>
<li>
<p>子公司汇率类型，选项值：</p>
<ul>
<li>
<p><code>DEFAULT</code></p>
</li>
<li>
<p><code>CURRENT</code></p>
</li>
<li>
<p><code>HISTORICAL</code></p>
</li>
<li>
<p><code>AVERAGE</code></p>
</li>
<li>
<p>SQL EXPRESSION</p>
</li>
</ul>
</li>
</ol>
<p>若设置为DEFAULT，则会根据科目的一般汇率类型自动获取合并汇率表中的汇率值</p>
<ol start="5">
<li>
<p>目标子公司，默认值是母公司</p>
<ul>
<li>
<p>子公司内部 ID</p>
</li>
<li>
<p>SQL EXPRESSION</p>
</li>
</ul>
</li>
<li>
<p>期间，默认是所选期间，如果未选择期间则是运行 SuiteQL 的期间</p>
<ul>
<li>
<p>期间内部 ID</p>
</li>
<li>
<p>SQL EXPRESSION，例如：使用BUILTIN.PERIOD 函数</p>
</li>
</ul>
</li>
<li>
<p>账簿，默认是主账簿</p>
<ul>
<li>
<p><code>DEFAULT</code></p>
</li>
<li>
<p>SQL EXPRESSION</p>
</li>
</ul>
</li>
</ol>
<p>除了原始金额字段名称和视图类型之外，其它参数都可以使用'DEFAULT'作为参数值</p>
<h3>8.2 BUILTIN.CURRENCY_CONVERT</h3>
<blockquote>
<p>BUILTIN.CURRENCY_CONVERT 函数相当于工作簿中的<code>converted</code>，只能对<strong>事务处理</strong>和<strong>事务处理行</strong>中的金额字段进行转换</p>
</blockquote>
<p>BUILTIN.CONSOLIDATE 函数的作用是使用特定日期汇率将字段中存储的货币金额转换为目标货币。使用示例：</p>
<pre><code class="language-javascript">BUILTIN.CURRENCY_CONVERT(sales.amount)
BUILTIN.CURRENCY_CONVERT(sales.amount, 1)
BUILTIN.CURRENCY_CONVERT(sales.amount, 1, TO_DATE('2019-01-30', 'YYYY-MM-DD'))
</code></pre>
<p>BUILTIN.CURRENCY_CONVERT 函数使用下列参数：</p>
<ol>
<li>
<p>原始金额字段名称</p>
</li>
<li>
<p>目标货币（可选；默认值是母公司货币），接受下列值：</p>
<ul>
<li>
<p>Number</p>
</li>
<li>
<p>Date</p>
</li>
</ul>
</li>
<li>
<p>使用汇率的日期（可选；默认值为今天的日期）</p>
</li>
</ol>
]]></description>
            <link>https://zhangchenyi.fun/currency-exchange-mechanism</link>
            <guid isPermaLink="false">09d365c7-9560-4c4a-850e-3df05a8d172e</guid>
            <pubDate>Thu, 27 Mar 2025 02:30:00 GMT</pubDate>
        </item>
        <item>
            <title><![CDATA[NetSuite：更改货品会计科目]]></title>
            <description><![CDATA[<p>在 NetSuite <strong>2021.2 版本</strong>之前，更改项目的资产和销货成本 (COGS) 科目将对货品的过帐交易记录产生追溯作用，这意味着，如果该货品被包含在关闭期间的事务处理中，必须重新打开已关闭期间才能实现更改</p>
<p>在 NetSuite 2021.2 版本中，系统引入了一个新的首选项，允许更改货品的资产和销售成本科目，而不影响历史交易</p>
<blockquote>
<ol>
<li>
<p>未启用该设置，更改任何科目都需要重新打开已关闭期间</p>
</li>
<li>
<p>启用该设置后，<strong>仅更改资产和销售成本科目</strong>不会影响历史交易，若更改其它科目仍需重新打开已关闭期间</p>
</li>
</ol>
</blockquote>
<p><strong>启用首选项步骤：</strong></p>
<ol>
<li>
<p>导航至“设置” &gt; “会计” &gt; “会计首选项”</p>
</li>
<li>
<p>在“货品/事务处理”选项卡的“科目”部分中，勾选“更改科目时，不更新现有事务处理上的销货成本和资产科目”复选框</p>
<p><img src="https://static.gridea.dev/6ca565dd-d5f9-4ffb-91cb-fd2c69b1d25f/K6tSP7FQ7.png" alt="">⚠️ <strong>该设置一旦启用，就无法再取消</strong>，需要谨慎决定是否启用该设置</p>
</li>
</ol>
]]></description>
            <link>https://zhangchenyi.fun/change-item-account</link>
            <guid isPermaLink="false">cc58774d-dc37-48e2-9a26-b61977128b96</guid>
            <pubDate>Wed, 05 Mar 2025 17:00:00 GMT</pubDate>
        </item>
        <item>
            <title><![CDATA[NetSuite：库存调整单头行地点的区别]]></title>
            <description><![CDATA[<p>库存调整的头级别的“调整地点”字段用于分类。例如，如果将费用科目（损失，盗窃和破坏）作为调整帐户，则对应地增加或减少该科目的库存价值。</p>
<p>理想情况下，应该针对同一交易中同一地点进行调整，但是系统为某些用户提供一个选择，这些用户可能希望使用单独的位置跟踪使用使用的调整科目。<br>
同时，行级别上的“地点”字段是强制性的（如果启用了多个位置库存功能），以确定库存资产科目中的增加或减少的报告，并在何处进行了数量的调整。</p>
<p>对库存调整的GL影响，<strong>库存资产科目与“地点”相关联</strong>，而<strong>调整科目（通常是费用科目）与“调整地点”相关联</strong>。<img src="https://static.gridea.dev/6ca565dd-d5f9-4ffb-91cb-fd2c69b1d25f/MYkIjEArS.png" alt="">让我们用快递仓库的管理来类比理解这两个地点的区别：</p>
<p>假设你是仓库主管，发现上海仓库少了5箱苹果（库存损耗）</p>
<ol>
<li>行级别「地点」字段 ➔ 实际存放货物的物理位置</li>
</ol>
<ul>
<li>
<p>相当于实物操作记录本：&quot;这5箱苹果原本存放在上海浦东仓库的A区3号货架&quot;</p>
</li>
<li>
<p>必须填写（系统强制）：就像每次出入库必须登记具体货架位置</p>
</li>
<li>
<p>直接影响库存报表：系统会从上海仓库的库存数量中扣除这5箱</p>
</li>
</ul>
<ol start="2">
<li>头级别「调整地点」字段 ➔ 财务记账的虚拟部门</li>
</ol>
<ul>
<li>
<p>相当于财务部门的记账本：&quot;这次损耗要记在华东大区的损耗专项账上&quot;</p>
</li>
<li>
<p>选择性填写：总部允许华东大区单独核算损耗时才会用到</p>
</li>
<li>
<p>影响会计科目：当选择&quot;华东大区&quot;时，损耗费用会自动关联到该大区的费用科目</p>
</li>
</ul>
<p>实际应用场景：某连锁超市发现：</p>
<ul>
<li>
<p>北京仓库（行级别地点）丢失了10件商品</p>
</li>
<li>
<p>调整原因属于&quot;运输损耗&quot;，总部分配这笔费用要计入&quot;华北运营中心&quot;（调整地点）</p>
</li>
</ul>
<p>这时：</p>
<ul>
<li>
<p>库存报表显示北京仓库减少10件</p>
</li>
<li>
<p>财务报表显示华北运营中心的损耗费用增加对应金额</p>
</li>
<li>
<p>其他大区的损耗统计不受影响</p>
</li>
</ul>
<blockquote>
<p>⚠️ 关键点：行地点管&quot;货物在哪&quot;，调整地点管&quot;钱从哪出&quot;，就像仓库管理员和财务专员各记各的台账，但数据最终要能对应上。</p>
</blockquote>
]]></description>
            <link>https://zhangchenyi.fun/invadjst-location-difference</link>
            <guid isPermaLink="false">4fcc6d5d-aefa-47f7-93b6-a472a8fe68a3</guid>
            <pubDate>Fri, 21 Feb 2025 17:25:00 GMT</pubDate>
        </item>
        <item>
            <title><![CDATA[NetSuite：展示事务处理单据的创建人]]></title>
            <description><![CDATA[<p>在 NetSuite 系统中，事务处理单据的创建人信息通常只能通过系统备注查看。然而，许多用户希望能在单据上直接展示创建人信息。本文将介绍两种实现这一需求的方案：工作流和 User Event Script</p>
<h2>1. 字段设置</h2>
<p>首先，我们需要创建一个用于存储单据创建人信息的字段</p>
<p><strong>创建事务处理主体字段</strong></p>
<ul>
<li>
<p>类型: 列表/记录</p>
</li>
<li>
<p>列表/记录: 员工</p>
</li>
<li>
<p>应用于: 全部勾选</p>
</li>
<li>
<p>动态默认值: 当前用户</p>
</li>
</ul>
<h2>2. 方案一：工作流</h2>
<p>通过创建工作流，我们可以在单据加载时自动设置创建人字段</p>
<h3>操作步骤</h3>
<ol>
<li>
<p>在 NetSuite 中创建工作流</p>
</li>
<li>
<p>在开始节点中添加“设置字段值”</p>
</li>
<li>
<p>按下述配置设置触发条件和字段值</p>
</li>
</ol>
<h3>工作流配置</h3>
<ul>
<li>
<p><strong>触发日期</strong>: 加载记录之前</p>
</li>
<li>
<p><strong>事件类型</strong>: 创建、复制</p>
</li>
<li>
<p><strong>字段</strong>: 选择上一步创建的字段</p>
</li>
<li>
<p><strong>静态值所选项</strong>: 当前用户</p>
</li>
</ul>
<h2>3. 方案二：User Event Script</h2>
<p>对于更复杂的场景，可以使用 User Event Script 来实现相同的功能</p>
<h3>实现步骤</h3>
<ol>
<li>
<p>在 NetSuite 中创建 User Event Script</p>
</li>
<li>
<p>将上述代码粘贴到脚本编辑器中</p>
</li>
<li>
<p>部署脚本并关联到相应的事务处理单据</p>
</li>
</ol>
<h3>脚本代码</h3>
<pre><code class="language-javascript">function beforeLoad(context) {
    const systemId = -4;

    if (['create', 'copy'].includes(context.type)) {
        context.newRecord.setValue({
            fieldId: 'custbody_transaction_creator',
            value: runtime.getCurrentUser()?.id || systemId
        });
    }
}
</code></pre>
<h2>4. 选择方案的建议</h2>
<ul>
<li>
<p><strong>工作流</strong>: 适合对编码不熟悉的用户，配置简单，易于维护</p>
</li>
<li>
<p><strong>User Event Script</strong>: 适合需要更复杂逻辑的场景，灵活性更高</p>
</li>
</ul>
]]></description>
            <link>https://zhangchenyi.fun/transaction-creator</link>
            <guid isPermaLink="false">03c592e8-6f3a-4542-b287-30618dd6f70f</guid>
            <pubDate>Fri, 14 Feb 2025 11:07:00 GMT</pubDate>
        </item>
        <item>
            <title><![CDATA[NetSuite：如何理解汇率类型]]></title>
            <description><![CDATA[<p>NetSuite中有3种汇率类型，它们之间有什么区别呢？</p>
<h2>一、即期汇率（Current Rate）</h2>
<p><strong>定义</strong><br>
即期汇率是 <strong>某一特定时点（通常是会计期间结束时）的实时汇率</strong>，反映截止日期的即时市场汇率水平。</p>
<p><strong>示例</strong></p>
<ul>
<li>假设2023年12月31日的美元兑人民币汇率为1:7.1，所有资产负债表账户的外币余额均按此汇率转换。</li>
</ul>
<p><strong>应用场景</strong></p>
<ul>
<li>
<p><strong>资产负债表账户（除权益类）</strong>：</p>
</li>
<li>
<p>现金、应收账款、应付账款等流动性资产/负债，需反映最新市场价值。</p>
</li>
<li>
<p>例如：年末1000美元的应收账款，按当前汇率7.1转换为7100人民币。</p>
</li>
<li>
<p><strong>实时财务快照</strong>：</p>
</li>
<li>
<p>用于编制资产负债表时，体现企业截止日期的真实财务状况。</p>
</li>
</ul>
<p><strong>核心逻辑</strong></p>
<ul>
<li>
<p><strong>时效性</strong>：捕捉汇率在截止时点的最新值，确保资产/负债估值与市场同步。</p>
</li>
<li>
<p><strong>波动敏感</strong>：若汇率在期间末大幅波动，可能显著影响资产负债表金额。</p>
</li>
</ul>
<h2>二、平均汇率（Average Rate）</h2>
<p><strong>定义</strong><br>
平均汇率是 <strong>某一期间内每日汇率的加权平均值</strong>，反映该时间段内汇率的整体水平。</p>
<p><strong>示例</strong></p>
<ul>
<li>某月美元兑人民币汇率每日波动，最终计算出的月平均汇率为1:7.0。</li>
</ul>
<p><strong>应用场景</strong></p>
<ul>
<li>
<p><strong>损益表账户</strong>（收入、费用）：</p>
</li>
<li>
<p>匹配期间内经营活动产生的收入或费用，平滑汇率波动对利润的影响。</p>
</li>
<li>
<p>例如：某月1000美元收入按平均汇率7.0转换为7000人民币。</p>
</li>
<li>
<p><strong>现金流量表</strong>：</p>
</li>
<li>
<p>动态现金流活动（如销售收款、采购付款）按期间平均汇率转换。</p>
</li>
</ul>
<p><strong>核心逻辑</strong></p>
<ul>
<li>
<p><strong>动态匹配</strong>：与“权责发生制”原则一致，将期间收入/费用与平均汇率关联。</p>
</li>
<li>
<p><strong>平滑波动</strong>：避免单一时点汇率波动扭曲期间经营成果的展示。</p>
</li>
</ul>
<h2>三、历史汇率（Historical Rate）</h2>
<p><strong>定义</strong><br>
历史汇率是 <strong>交易发生时的实际汇率</strong>，后续始终按此汇率转换，不受未来波动影响。</p>
<p><strong>示例</strong></p>
<ul>
<li>2020年1月1日以1:7.5的汇率购入固定资产，后续无论汇率如何变化，资产价值始终按7.5转换。</li>
</ul>
<p><strong>应用场景</strong></p>
<ul>
<li>
<p><strong>权益类账户</strong>（股本、留存收益）：</p>
</li>
<li>
<p>保持股东初始投资或历史留存收益的原始价值。</p>
</li>
<li>
<p><strong>长期资产/负债</strong>（固定资产、长期借款）：</p>
</li>
<li>
<p>反映交易时的实际成本，避免后续汇率波动干扰历史成本计量。</p>
</li>
</ul>
<p><strong>核心逻辑</strong></p>
<ul>
<li>
<p><strong>稳定性</strong>：锁定交易发生时的汇率，确保历史数据不受未来波动影响。</p>
</li>
<li>
<p><strong>真实性</strong>：符合历史成本原则，忠实记录交易原始价值。</p>
</li>
</ul>
<h2>四、三者对比总结</h2>
<p>&lt;table&gt;&lt;tbody&gt;&lt;tr&gt;&lt;td&gt;&lt;p&gt;&lt;strong&gt;对比维度&lt;/strong&gt;&lt;/p&gt;&lt;/td&gt;&lt;td&gt;&lt;p&gt;&lt;strong&gt;即期汇率&lt;/strong&gt;&lt;/p&gt;&lt;/td&gt;&lt;td&gt;&lt;p&gt;&lt;strong&gt;平均汇率&lt;/strong&gt;&lt;/p&gt;&lt;/td&gt;&lt;td&gt;&lt;p&gt;&lt;strong&gt;历史汇率&lt;/strong&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;p&gt;&lt;strong&gt;定义&lt;/strong&gt;&lt;/p&gt;&lt;/td&gt;&lt;td&gt;&lt;p&gt;期间结束时的实时汇率&lt;/p&gt;&lt;/td&gt;&lt;td&gt;&lt;p&gt;期间内汇率的加权平均值&lt;/p&gt;&lt;/td&gt;&lt;td&gt;&lt;p&gt;交易发生时的实际汇率&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;p&gt;&lt;strong&gt;适用场景&lt;/strong&gt;&lt;/p&gt;&lt;/td&gt;&lt;td&gt;&lt;p&gt;资产负债表（非权益账户）&lt;/p&gt;&lt;/td&gt;&lt;td&gt;&lt;p&gt;损益表、现金流量表&lt;/p&gt;&lt;/td&gt;&lt;td&gt;&lt;p&gt;权益账户、长期资产/负债&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;p&gt;&lt;strong&gt;数据特性&lt;/strong&gt;&lt;/p&gt;&lt;/td&gt;&lt;td&gt;&lt;p&gt;反映最新市场价值&lt;/p&gt;&lt;/td&gt;&lt;td&gt;&lt;p&gt;平滑期间汇率波动&lt;/p&gt;&lt;/td&gt;&lt;td&gt;&lt;p&gt;锁定原始交易价值&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;p&gt;&lt;strong&gt;核心目的&lt;/strong&gt;&lt;/p&gt;&lt;/td&gt;&lt;td&gt;&lt;p&gt;体现截止日期的财务状况&lt;/p&gt;&lt;/td&gt;&lt;td&gt;&lt;p&gt;匹配期间经营成果&lt;/p&gt;&lt;/td&gt;&lt;td&gt;&lt;p&gt;保持历史数据稳定性&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;p&gt;&lt;strong&gt;典型账户&lt;/strong&gt;&lt;/p&gt;&lt;/td&gt;&lt;td&gt;&lt;p&gt;现金、应收账款、应付账款&lt;/p&gt;&lt;/td&gt;&lt;td&gt;&lt;p&gt;收入、费用、现金流&lt;/p&gt;&lt;/td&gt;&lt;td&gt;&lt;p&gt;股本、固定资产、长期借款&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;p&gt;&lt;strong&gt;波动敏感性&lt;/strong&gt;&lt;/p&gt;&lt;/td&gt;&lt;td&gt;&lt;p&gt;高&lt;/p&gt;&lt;/td&gt;&lt;td&gt;&lt;p&gt;中&lt;/p&gt;&lt;/td&gt;&lt;td&gt;&lt;p&gt;低&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;</p>
<h2>五、常见误区</h2>
<ol>
<li><strong>误用即期汇率于损益表</strong>：</li>
</ol>
<ul>
<li>若收入/费用按即期汇率转换，会导致利润数据受期末单一时点汇率影响，无法反映期间整体水平。</li>
</ul>
<ol start="2">
<li><strong>误用历史汇率于流动性资产</strong>：</li>
</ol>
<ul>
<li>现金等短期资产若用历史汇率，会低估/高估其实际可变现价值。</li>
</ul>
<ol start="3">
<li><strong>混淆平均汇率与即期汇率</strong>：</li>
</ol>
<ul>
<li>现金流量表默认用平均汇率（非即期汇率），因其需匹配期间内动态现金流。</li>
</ul>
<h2>六、一句话理解</h2>
<ul>
<li>
<p><strong>即期汇率</strong>：看的是 <strong>“截止时点”</strong>，用于实时资产负债估值。</p>
</li>
<li>
<p><strong>平均汇率</strong>：看的是 <strong>“期间整体”</strong>，用于动态损益和现金流。</p>
</li>
<li>
<p><strong>历史汇率</strong>：看的是 <strong>“交易发生时”</strong>，用于静态权益和长期资产。</p>
</li>
</ul>
<h2>七、总结</h2>
<p>通过这种设计，NetSuite OneWorld 确保了：</p>
<ol>
<li>
<p><strong>资产负债表</strong> 用即期汇率体现最新财务状况；</p>
</li>
<li>
<p><strong>损益表</strong> 用平均汇率合理反映期间经营成果；</p>
</li>
<li>
<p><strong>权益和长期项目</strong> 用历史汇率维持数据稳定性。<br>
三者共同支撑了多币种环境下财务报告的准确性和合规性。</p>
</li>
</ol>
]]></description>
            <link>https://zhangchenyi.fun/understand-exchange-rate-types</link>
            <guid isPermaLink="false">1d9c1549-cacd-45fc-b276-8f057fea2465</guid>
            <pubDate>Mon, 10 Feb 2025 18:22:00 GMT</pubDate>
        </item>
        <item>
            <title><![CDATA[NetSuite：会计科目表 COA]]></title>
            <description><![CDATA[<h2>1 NetSuite 中科目分类</h2>
<p>会计科目表有 5 大类别：</p>
<ol>
<li>
<p>Assets 资产</p>
</li>
<li>
<p>Liabilities 负债</p>
</li>
<li>
<p>Equity 权益</p>
</li>
<li>
<p>Income 收入</p>
</li>
<li>
<p>Expenses 费用</p>
</li>
</ol>
<blockquote>
<p>会计等式：资产 + 费用 = 权益 + 负债 + 收入</p>
</blockquote>
<p>科目类别之下又有细分的科目类型，关系如下表：</p>
<p>&lt;table&gt;&lt;tbody&gt;&lt;tr&gt;&lt;td data-colwidth=&quot;154&quot; style=&quot;background-color: rgb(248, 247, 244);&quot; data-background-color=&quot;rgb(248, 247, 244)&quot;&gt;&lt;p&gt;&lt;strong&gt;类别&lt;/strong&gt;&lt;/p&gt;&lt;/td&gt;&lt;td data-colwidth=&quot;247&quot; style=&quot;background-color: rgb(248, 247, 244);&quot; data-background-color=&quot;rgb(248, 247, 244)&quot;&gt;&lt;p&gt;&lt;strong&gt;科目类型&lt;/strong&gt;&lt;/p&gt;&lt;/td&gt;&lt;td data-colwidth=&quot;105&quot; style=&quot;background-color: rgb(248, 247, 244);&quot; data-background-color=&quot;rgb(248, 247, 244)&quot;&gt;&lt;p&gt;&lt;strong&gt;借贷方向&lt;/strong&gt;&lt;/p&gt;&lt;/td&gt;&lt;td data-colwidth=&quot;61&quot; style=&quot;background-color: rgb(248, 247, 244);&quot; data-background-color=&quot;rgb(248, 247, 244)&quot;&gt;&lt;p&gt;&lt;strong&gt;符号&lt;/strong&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td data-colwidth=&quot;154&quot; style=&quot;background-color: rgb(244, 245, 245);&quot; data-background-color=&quot;rgb(244, 245, 245)&quot;&gt;&lt;p&gt;Asset 资产&lt;/p&gt;&lt;/td&gt;&lt;td data-colwidth=&quot;247&quot; style=&quot;background-color: rgb(244, 245, 245);&quot; data-background-color=&quot;rgb(244, 245, 245)&quot;&gt;&lt;p&gt;Accounts Receivable 应收账款&lt;/p&gt;&lt;/td&gt;&lt;td data-colwidth=&quot;105&quot; style=&quot;background-color: rgb(244, 245, 245);&quot; data-background-color=&quot;rgb(244, 245, 245)&quot;&gt;&lt;p&gt;Debit 借&lt;/p&gt;&lt;/td&gt;&lt;td data-colwidth=&quot;61&quot; style=&quot;background-color: rgb(244, 245, 245);&quot; data-background-color=&quot;rgb(244, 245, 245)&quot;&gt;&lt;p&gt;+&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td data-colwidth=&quot;154&quot; style=&quot;background-color: rgb(244, 245, 245);&quot; data-background-color=&quot;rgb(244, 245, 245)&quot;&gt;&lt;p&gt;Asset 资产&lt;/p&gt;&lt;/td&gt;&lt;td data-colwidth=&quot;247&quot; style=&quot;background-color: rgb(244, 245, 245);&quot; data-background-color=&quot;rgb(244, 245, 245)&quot;&gt;&lt;p&gt;Bank 银行&lt;/p&gt;&lt;/td&gt;&lt;td data-colwidth=&quot;105&quot; style=&quot;background-color: rgb(244, 245, 245);&quot; data-background-color=&quot;rgb(244, 245, 245)&quot;&gt;&lt;p&gt;Debit 借&lt;/p&gt;&lt;/td&gt;&lt;td data-colwidth=&quot;61&quot; style=&quot;background-color: rgb(244, 245, 245);&quot; data-background-color=&quot;rgb(244, 245, 245)&quot;&gt;&lt;p&gt;+&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td data-colwidth=&quot;154&quot; style=&quot;background-color: rgb(244, 245, 245);&quot; data-background-color=&quot;rgb(244, 245, 245)&quot;&gt;&lt;p&gt;Asset 资产&lt;/p&gt;&lt;/td&gt;&lt;td data-colwidth=&quot;247&quot; style=&quot;background-color: rgb(244, 245, 245);&quot; data-background-color=&quot;rgb(244, 245, 245)&quot;&gt;&lt;p&gt;Deferred Expense 递延费用&lt;/p&gt;&lt;/td&gt;&lt;td data-colwidth=&quot;105&quot; style=&quot;background-color: rgb(244, 245, 245);&quot; data-background-color=&quot;rgb(244, 245, 245)&quot;&gt;&lt;p&gt;Debit 借&lt;/p&gt;&lt;/td&gt;&lt;td data-colwidth=&quot;61&quot; style=&quot;background-color: rgb(244, 245, 245);&quot; data-background-color=&quot;rgb(244, 245, 245)&quot;&gt;&lt;p&gt;+&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td data-colwidth=&quot;154&quot; style=&quot;background-color: rgb(244, 245, 245);&quot; data-background-color=&quot;rgb(244, 245, 245)&quot;&gt;&lt;p&gt;Asset 资产&lt;/p&gt;&lt;/td&gt;&lt;td data-colwidth=&quot;247&quot; style=&quot;background-color: rgb(244, 245, 245);&quot; data-background-color=&quot;rgb(244, 245, 245)&quot;&gt;&lt;p&gt;Fixed Asset 固定资产&lt;/p&gt;&lt;/td&gt;&lt;td data-colwidth=&quot;105&quot; style=&quot;background-color: rgb(244, 245, 245);&quot; data-background-color=&quot;rgb(244, 245, 245)&quot;&gt;&lt;p&gt;Debit 借&lt;/p&gt;&lt;/td&gt;&lt;td data-colwidth=&quot;61&quot; style=&quot;background-color: rgb(244, 245, 245);&quot; data-background-color=&quot;rgb(244, 245, 245)&quot;&gt;&lt;p&gt;+&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td data-colwidth=&quot;154&quot; style=&quot;background-color: rgb(244, 245, 245);&quot; data-background-color=&quot;rgb(244, 245, 245)&quot;&gt;&lt;p&gt;Asset 资产&lt;/p&gt;&lt;/td&gt;&lt;td data-colwidth=&quot;247&quot; style=&quot;background-color: rgb(244, 245, 245);&quot; data-background-color=&quot;rgb(244, 245, 245)&quot;&gt;&lt;p&gt;Other Asset 其他资产&lt;/p&gt;&lt;/td&gt;&lt;td data-colwidth=&quot;105&quot; style=&quot;background-color: rgb(244, 245, 245);&quot; data-background-color=&quot;rgb(244, 245, 245)&quot;&gt;&lt;p&gt;Debit 借&lt;/p&gt;&lt;/td&gt;&lt;td data-colwidth=&quot;61&quot; style=&quot;background-color: rgb(244, 245, 245);&quot; data-background-color=&quot;rgb(244, 245, 245)&quot;&gt;&lt;p&gt;+&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td data-colwidth=&quot;154&quot; style=&quot;background-color: rgb(244, 245, 245);&quot; data-background-color=&quot;rgb(244, 245, 245)&quot;&gt;&lt;p&gt;Asset 资产&lt;/p&gt;&lt;/td&gt;&lt;td data-colwidth=&quot;247&quot; style=&quot;background-color: rgb(244, 245, 245);&quot; data-background-color=&quot;rgb(244, 245, 245)&quot;&gt;&lt;p&gt;Other Current Asset 其他流动资产&lt;/p&gt;&lt;/td&gt;&lt;td data-colwidth=&quot;105&quot; style=&quot;background-color: rgb(244, 245, 245);&quot; data-background-color=&quot;rgb(244, 245, 245)&quot;&gt;&lt;p&gt;Debit 借&lt;/p&gt;&lt;/td&gt;&lt;td data-colwidth=&quot;61&quot; style=&quot;background-color: rgb(244, 245, 245);&quot; data-background-color=&quot;rgb(244, 245, 245)&quot;&gt;&lt;p&gt;+&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td data-colwidth=&quot;154&quot; style=&quot;background-color: rgb(244, 245, 245);&quot; data-background-color=&quot;rgb(244, 245, 245)&quot;&gt;&lt;p&gt;Asset 资产&lt;/p&gt;&lt;/td&gt;&lt;td data-colwidth=&quot;247&quot; style=&quot;background-color: rgb(244, 245, 245);&quot; data-background-color=&quot;rgb(244, 245, 245)&quot;&gt;&lt;p&gt;Unbilled Receivable 未开票应收账款&lt;/p&gt;&lt;/td&gt;&lt;td data-colwidth=&quot;105&quot; style=&quot;background-color: rgb(244, 245, 245);&quot; data-background-color=&quot;rgb(244, 245, 245)&quot;&gt;&lt;p&gt;Debit 借&lt;/p&gt;&lt;/td&gt;&lt;td data-colwidth=&quot;61&quot; style=&quot;background-color: rgb(244, 245, 245);&quot; data-background-color=&quot;rgb(244, 245, 245)&quot;&gt;&lt;p&gt;+&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td data-colwidth=&quot;154&quot; style=&quot;background-color: rgb(216, 218, 217);&quot; data-background-color=&quot;rgb(216, 218, 217)&quot;&gt;&lt;p&gt;Equity 权益&lt;/p&gt;&lt;/td&gt;&lt;td data-colwidth=&quot;247&quot; style=&quot;background-color: rgb(216, 218, 217);&quot; data-background-color=&quot;rgb(216, 218, 217)&quot;&gt;&lt;p&gt;Equity 权益&lt;/p&gt;&lt;/td&gt;&lt;td data-colwidth=&quot;105&quot; style=&quot;background-color: rgb(216, 218, 217);&quot; data-background-color=&quot;rgb(216, 218, 217)&quot;&gt;&lt;p&gt;Credit 贷&lt;/p&gt;&lt;/td&gt;&lt;td data-colwidth=&quot;61&quot; style=&quot;background-color: rgb(216, 218, 217);&quot; data-background-color=&quot;rgb(216, 218, 217)&quot;&gt;&lt;p&gt;-&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td data-colwidth=&quot;154&quot; style=&quot;background-color: rgb(244, 245, 245);&quot; data-background-color=&quot;rgb(244, 245, 245)&quot;&gt;&lt;p&gt;Expense 费用&lt;/p&gt;&lt;/td&gt;&lt;td data-colwidth=&quot;247&quot; style=&quot;background-color: rgb(244, 245, 245);&quot; data-background-color=&quot;rgb(244, 245, 245)&quot;&gt;&lt;p&gt;Cost of Goods Sold 销货成本&lt;/p&gt;&lt;/td&gt;&lt;td data-colwidth=&quot;105&quot; style=&quot;background-color: rgb(244, 245, 245);&quot; data-background-color=&quot;rgb(244, 245, 245)&quot;&gt;&lt;p&gt;Debit 借&lt;/p&gt;&lt;/td&gt;&lt;td data-colwidth=&quot;61&quot; style=&quot;background-color: rgb(244, 245, 245);&quot; data-background-color=&quot;rgb(244, 245, 245)&quot;&gt;&lt;p&gt;+&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td data-colwidth=&quot;154&quot; style=&quot;background-color: rgb(244, 245, 245);&quot; data-background-color=&quot;rgb(244, 245, 245)&quot;&gt;&lt;p&gt;Expense 费用&lt;/p&gt;&lt;/td&gt;&lt;td data-colwidth=&quot;247&quot; style=&quot;background-color: rgb(244, 245, 245);&quot; data-background-color=&quot;rgb(244, 245, 245)&quot;&gt;&lt;p&gt;Expense 费用&lt;/p&gt;&lt;/td&gt;&lt;td data-colwidth=&quot;105&quot; style=&quot;background-color: rgb(244, 245, 245);&quot; data-background-color=&quot;rgb(244, 245, 245)&quot;&gt;&lt;p&gt;Debit 借&lt;/p&gt;&lt;/td&gt;&lt;td data-colwidth=&quot;61&quot; style=&quot;background-color: rgb(244, 245, 245);&quot; data-background-color=&quot;rgb(244, 245, 245)&quot;&gt;&lt;p&gt;+&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td data-colwidth=&quot;154&quot; style=&quot;background-color: rgb(244, 245, 245);&quot; data-background-color=&quot;rgb(244, 245, 245)&quot;&gt;&lt;p&gt;Expense 费用&lt;/p&gt;&lt;/td&gt;&lt;td data-colwidth=&quot;247&quot; style=&quot;background-color: rgb(244, 245, 245);&quot; data-background-color=&quot;rgb(244, 245, 245)&quot;&gt;&lt;p&gt;Other Expense 其他费用&lt;/p&gt;&lt;/td&gt;&lt;td data-colwidth=&quot;105&quot; style=&quot;background-color: rgb(244, 245, 245);&quot; data-background-color=&quot;rgb(244, 245, 245)&quot;&gt;&lt;p&gt;Debit 借&lt;/p&gt;&lt;/td&gt;&lt;td data-colwidth=&quot;61&quot; style=&quot;background-color: rgb(244, 245, 245);&quot; data-background-color=&quot;rgb(244, 245, 245)&quot;&gt;&lt;p&gt;+&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td data-colwidth=&quot;154&quot; style=&quot;background-color: rgb(216, 218, 217);&quot; data-background-color=&quot;rgb(216, 218, 217)&quot;&gt;&lt;p&gt;Income 收入&lt;/p&gt;&lt;/td&gt;&lt;td data-colwidth=&quot;247&quot; style=&quot;background-color: rgb(216, 218, 217);&quot; data-background-color=&quot;rgb(216, 218, 217)&quot;&gt;&lt;p&gt;Income 收入&lt;/p&gt;&lt;/td&gt;&lt;td data-colwidth=&quot;105&quot; style=&quot;background-color: rgb(216, 218, 217);&quot; data-background-color=&quot;rgb(216, 218, 217)&quot;&gt;&lt;p&gt;Credit 贷&lt;/p&gt;&lt;/td&gt;&lt;td data-colwidth=&quot;61&quot; style=&quot;background-color: rgb(216, 218, 217);&quot; data-background-color=&quot;rgb(216, 218, 217)&quot;&gt;&lt;p&gt;-&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td data-colwidth=&quot;154&quot; style=&quot;background-color: rgb(216, 218, 217);&quot; data-background-color=&quot;rgb(216, 218, 217)&quot;&gt;&lt;p&gt;Income 收入&lt;/p&gt;&lt;/td&gt;&lt;td data-colwidth=&quot;247&quot; style=&quot;background-color: rgb(216, 218, 217);&quot; data-background-color=&quot;rgb(216, 218, 217)&quot;&gt;&lt;p&gt;Other Income 其他收入&lt;/p&gt;&lt;/td&gt;&lt;td data-colwidth=&quot;105&quot; style=&quot;background-color: rgb(216, 218, 217);&quot; data-background-color=&quot;rgb(216, 218, 217)&quot;&gt;&lt;p&gt;Credit 贷&lt;/p&gt;&lt;/td&gt;&lt;td data-colwidth=&quot;61&quot; style=&quot;background-color: rgb(216, 218, 217);&quot; data-background-color=&quot;rgb(216, 218, 217)&quot;&gt;&lt;p&gt;-&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td data-colwidth=&quot;154&quot; style=&quot;background-color: rgb(244, 245, 245);&quot; data-background-color=&quot;rgb(244, 245, 245)&quot;&gt;&lt;p&gt;Liability 负债&lt;/p&gt;&lt;/td&gt;&lt;td data-colwidth=&quot;247&quot; style=&quot;background-color: rgb(244, 245, 245);&quot; data-background-color=&quot;rgb(244, 245, 245)&quot;&gt;&lt;p&gt;Accounts Payable 应付账款&lt;/p&gt;&lt;/td&gt;&lt;td data-colwidth=&quot;105&quot; style=&quot;background-color: rgb(244, 245, 245);&quot; data-background-color=&quot;rgb(244, 245, 245)&quot;&gt;&lt;p&gt;Credit 贷&lt;/p&gt;&lt;/td&gt;&lt;td data-colwidth=&quot;61&quot; style=&quot;background-color: rgb(244, 245, 245);&quot; data-background-color=&quot;rgb(244, 245, 245)&quot;&gt;&lt;p&gt;-&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td data-colwidth=&quot;154&quot; style=&quot;background-color: rgb(244, 245, 245);&quot; data-background-color=&quot;rgb(244, 245, 245)&quot;&gt;&lt;p&gt;Liability 负债&lt;/p&gt;&lt;/td&gt;&lt;td data-colwidth=&quot;247&quot; style=&quot;background-color: rgb(244, 245, 245);&quot; data-background-color=&quot;rgb(244, 245, 245)&quot;&gt;&lt;p&gt;Credit Card 信用卡&lt;/p&gt;&lt;/td&gt;&lt;td data-colwidth=&quot;105&quot; style=&quot;background-color: rgb(244, 245, 245);&quot; data-background-color=&quot;rgb(244, 245, 245)&quot;&gt;&lt;p&gt;Credit 贷&lt;/p&gt;&lt;/td&gt;&lt;td data-colwidth=&quot;61&quot; style=&quot;background-color: rgb(244, 245, 245);&quot; data-background-color=&quot;rgb(244, 245, 245)&quot;&gt;&lt;p&gt;-&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td data-colwidth=&quot;154&quot; style=&quot;background-color: rgb(244, 245, 245);&quot; data-background-color=&quot;rgb(244, 245, 245)&quot;&gt;&lt;p&gt;Liability 负债&lt;/p&gt;&lt;/td&gt;&lt;td data-colwidth=&quot;247&quot; style=&quot;background-color: rgb(244, 245, 245);&quot; data-background-color=&quot;rgb(244, 245, 245)&quot;&gt;&lt;p&gt;Deferred Revenue 递延收入&lt;/p&gt;&lt;/td&gt;&lt;td data-colwidth=&quot;105&quot; style=&quot;background-color: rgb(244, 245, 245);&quot; data-background-color=&quot;rgb(244, 245, 245)&quot;&gt;&lt;p&gt;Credit 贷&lt;/p&gt;&lt;/td&gt;&lt;td data-colwidth=&quot;61&quot; style=&quot;background-color: rgb(244, 245, 245);&quot; data-background-color=&quot;rgb(244, 245, 245)&quot;&gt;&lt;p&gt;-&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td data-colwidth=&quot;154&quot; style=&quot;background-color: rgb(244, 245, 245);&quot; data-background-color=&quot;rgb(244, 245, 245)&quot;&gt;&lt;p&gt;Liability 负债&lt;/p&gt;&lt;/td&gt;&lt;td data-colwidth=&quot;247&quot; style=&quot;background-color: rgb(244, 245, 245);&quot; data-background-color=&quot;rgb(244, 245, 245)&quot;&gt;&lt;p&gt;Long Term Liability 长期负债&lt;/p&gt;&lt;/td&gt;&lt;td data-colwidth=&quot;105&quot; style=&quot;background-color: rgb(244, 245, 245);&quot; data-background-color=&quot;rgb(244, 245, 245)&quot;&gt;&lt;p&gt;Credit 贷&lt;/p&gt;&lt;/td&gt;&lt;td data-colwidth=&quot;61&quot; style=&quot;background-color: rgb(244, 245, 245);&quot; data-background-color=&quot;rgb(244, 245, 245)&quot;&gt;&lt;p&gt;-&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td data-colwidth=&quot;154&quot; style=&quot;background-color: rgb(244, 245, 245);&quot; data-background-color=&quot;rgb(244, 245, 245)&quot;&gt;&lt;p&gt;Liability 负债&lt;/p&gt;&lt;/td&gt;&lt;td data-colwidth=&quot;247&quot; style=&quot;background-color: rgb(244, 245, 245);&quot; data-background-color=&quot;rgb(244, 245, 245)&quot;&gt;&lt;p&gt;Other Current Liability 其他流动负债&lt;/p&gt;&lt;/td&gt;&lt;td data-colwidth=&quot;105&quot; style=&quot;background-color: rgb(244, 245, 245);&quot; data-background-color=&quot;rgb(244, 245, 245)&quot;&gt;&lt;p&gt;Credit 贷&lt;/p&gt;&lt;/td&gt;&lt;td data-colwidth=&quot;61&quot; style=&quot;background-color: rgb(244, 245, 245);&quot; data-background-color=&quot;rgb(244, 245, 245)&quot;&gt;&lt;p&gt;-&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;</p>
<h2>2 会计科目表运作机制</h2>
<p>常见的财务报表有 3 个：</p>
<ul>
<li>
<p>资产负债表（BS：Balance Sheet)</p>
</li>
<li>
<p>损益表（P&amp;L：Profit &amp; Loss Statement）或称 利润表（IS：Income Statement）</p>
</li>
<li>
<p>现金流量表（CF：Cash Flow Statement）</p>
</li>
</ul>
<p>会计科目表中仅反映<strong>资产负债表</strong>和<strong>损益表</strong>科目：</p>
<ul>
<li>
<p>资产负债表由 3 组科目组成：</p>
<ul>
<li>
<p>负债类科目：记录公司的所有债务</p>
</li>
<li>
<p>资产类科目：记录公司拥有的所有有价值的资源</p>
</li>
<li>
<p>权益类科目：代表从资产中减去负债后企业剩余的价值</p>
</li>
</ul>
</li>
<li>
<p>损益表科目由 2 组科目组成</p>
<ul>
<li>
<p>收入类科目：记录公司所有来源的收入</p>
</li>
<li>
<p>费用类科目：记录公司的所有支出</p>
</li>
</ul>
</li>
</ul>
]]></description>
            <link>https://zhangchenyi.fun/coa</link>
            <guid isPermaLink="false">5c2a88d1-d885-46a9-9f62-6a008fa523d1</guid>
            <pubDate>Sun, 19 Jan 2025 16:51:00 GMT</pubDate>
        </item>
    </channel>
</rss>