财务报表中的问题
选中 总账->设置->参数设置->分类账->中国法定报表 这个选项选中会造成一些问题.
1.总账->会计科目表->余额->维度余额 不能按维度查看余额;
2.总账->设置->财务报表->行定义->结构设计器->设置->借方/贷方 逻辑混乱。
对于第一点只要真正试一下就可以了,毋庸赘述。
第二点,理论上借方/贷方这个选项,如果选了借方,那么如果该科目的余额是借方的,就显示借方余额,如果该科目的余额是贷方的,则不显示,反之亦然。但是按当前报表的代码,某个科目既有借方发生,又有贷方发生,如果发生在同一天,则取余额,如果借方和贷方的发生不在同一天,则分别取借方和贷方的和,也就是说报表出来的结果会因为某个科目的借贷方发生是否在同一天而结果不同,我不是很理解这种做法的缘由,咨询了几个财务顾问也没得到这样做的理由,所以我觉得应该是bug。
所有的这些都是由LedgerTransReportEngine的方法buildQuery中的
为了避免上面的两个问题,可以注释掉这段代码,目前没有发现注释掉这段代码的副作用。
1.总账->会计科目表->余额->维度余额 不能按维度查看余额;
2.总账->设置->财务报表->行定义->结构设计器->设置->借方/贷方 逻辑混乱。
对于第一点只要真正试一下就可以了,毋庸赘述。
第二点,理论上借方/贷方这个选项,如果选了借方,那么如果该科目的余额是借方的,就显示借方余额,如果该科目的余额是贷方的,则不显示,反之亦然。但是按当前报表的代码,某个科目既有借方发生,又有贷方发生,如果发生在同一天,则取余额,如果借方和贷方的发生不在同一天,则分别取借方和贷方的和,也就是说报表出来的结果会因为某个科目的借贷方发生是否在同一天而结果不同,我不是很理解这种做法的缘由,咨询了几个财务顾问也没得到这样做的理由,所以我觉得应该是bug。
所有的这些都是由LedgerTransReportEngine的方法buildQuery中的
if (LedgerParameters::find().LegalReport_CN == NoYes::Yes)
{
qbds.addSelectionField(fieldnum(LedgerBalancesDim,TransDate));
_ledgerBalanceSheetDim.q_sortTransDate(qbds);
}
这段代码造成的。{
qbds.addSelectionField(fieldnum(LedgerBalancesDim,TransDate));
_ledgerBalanceSheetDim.q_sortTransDate(qbds);
}
为了避免上面的两个问题,可以注释掉这段代码,目前没有发现注释掉这段代码的副作用。