Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
erp5
Project overview
Project overview
Details
Activity
Releases
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Issues
0
Issues
0
List
Boards
Labels
Milestones
Merge Requests
0
Merge Requests
0
Analytics
Analytics
Repository
Value Stream
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Create a new issue
Commits
Issue Boards
Open sidebar
Xueyun Qian
erp5
Commits
aab014a9
Commit
aab014a9
authored
Jan 31, 2013
by
Jérome Perrin
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
Use inventory API for bank account's transaction tab
http://erp5.nexedi.com/bug_module/1591
parent
fe87ebc8
Changes
14
Expand all
Show whitespace changes
Inline
Side-by-side
Showing
14 changed files
with
2623 additions
and
319 deletions
+2623
-319
bt5/erp5_accounting/SkinTemplateItem/portal_skins/erp5_accounting/BankAccount_getAccountingTransactionList.xml
...5_accounting/BankAccount_getAccountingTransactionList.xml
+13
-104
bt5/erp5_accounting/SkinTemplateItem/portal_skins/erp5_accounting/BankAccount_statBalance.xml
.../portal_skins/erp5_accounting/BankAccount_statBalance.xml
+8
-7
bt5/erp5_accounting/SkinTemplateItem/portal_skins/erp5_accounting/BankAccount_statCredit.xml
...m/portal_skins/erp5_accounting/BankAccount_statCredit.xml
+77
-0
bt5/erp5_accounting/SkinTemplateItem/portal_skins/erp5_accounting/BankAccount_statDebit.xml
...em/portal_skins/erp5_accounting/BankAccount_statDebit.xml
+11
-5
bt5/erp5_accounting/SkinTemplateItem/portal_skins/erp5_accounting/BankAccount_viewAccountingTransactionList.xml
..._accounting/BankAccount_viewAccountingTransactionList.xml
+13
-0
bt5/erp5_accounting/SkinTemplateItem/portal_skins/erp5_accounting/BankAccount_viewAccountingTransactionList/listbox.xml
...ing/BankAccount_viewAccountingTransactionList/listbox.xml
+73
-21
bt5/erp5_accounting/SkinTemplateItem/portal_skins/erp5_accounting/BankAccount_viewAccountingTransactionList/listbox_credit.xml
...kAccount_viewAccountingTransactionList/listbox_credit.xml
+96
-0
bt5/erp5_accounting/SkinTemplateItem/portal_skins/erp5_accounting/BankAccount_viewAccountingTransactionList/listbox_date.xml
...ankAccount_viewAccountingTransactionList/listbox_date.xml
+2028
-0
bt5/erp5_accounting/SkinTemplateItem/portal_skins/erp5_accounting/BankAccount_viewAccountingTransactionList/listbox_debit.xml
...nkAccount_viewAccountingTransactionList/listbox_debit.xml
+100
-0
bt5/erp5_accounting/SkinTemplateItem/portal_skins/erp5_accounting/BankAccount_viewAccountingTransactionList/listbox_running_total_quantity.xml
...ountingTransactionList/listbox_running_total_quantity.xml
+96
-0
bt5/erp5_accounting/SkinTemplateItem/portal_skins/erp5_accounting/BankAccount_viewAccountingTransactionList/listbox_total_quantity.xml
..._viewAccountingTransactionList/listbox_total_quantity.xml
+96
-0
bt5/erp5_accounting/SkinTemplateItem/portal_skins/erp5_accounting/BankAccount_zGetAccountingTransactionList.xml
..._accounting/BankAccount_zGetAccountingTransactionList.xml
+0
-174
bt5/erp5_accounting/SkinTemplateItem/portal_skins/erp5_accounting/Node_statAccountingBalance.xml
...rtal_skins/erp5_accounting/Node_statAccountingBalance.xml
+11
-7
bt5/erp5_accounting/bt/revision
bt5/erp5_accounting/bt/revision
+1
-1
No files found.
bt5/erp5_accounting/SkinTemplateItem/portal_skins/erp5_accounting/BankAccount_getAccountingTransactionList.xml
View file @
aab014a9
...
...
@@ -50,110 +50,19 @@
</item>
<item>
<key>
<string>
_body
</string>
</key>
<value>
<string>
src__ = 0\n
if kw.has_key(\'src__\'): src__ = kw[\'src__\']\n
precision = context.Base_getPreferredPrecision()\n
r_ = lambda x: context.Base_getRoundValue(x, precision)\n
\n
# read settings from user preference\n
preference = context.getPortalObject().portal_preferences\n
simulation_state = preference.getPreferredAccountingTransactionSimulationStateList()\n
section_category = preference.getPreferredAccountingTransactionSectionCategory()\n
from_date = preference.getPreferredAccountingTransactionFromDate()\n
at_date = preference.getPreferredAccountingTransactionAtDate()\n
\n
# Build the common inventory dict\n
params = {}\n
\n
if kw.get(\'no_from_date\', False): from_date = None\n
\n
if simulation_state: params[\'simulation_state\'] = simulation_state\n
params[\'section_uid\'] = context.Base_getSectionUidListForSectionCategory(section_category)\n
\n
\n
if kw.has_key(\'node_uid\') : params[\'node_uid\'] = kw[\'node_uid\']\n
if kw.has_key(\'portal_type\'): params[\'portal_type\'] = kw[\'portal_type\']\n
\n
# Create the related accouting line list\n
new_result = []\n
net_balance = 0.0\n
\n
if from_date is not None:\n
# Create a new parameter list to get the previous balance\n
get_inventory_kw = params.copy()\n
get_inventory_kw.update({ \'omit_simulation\' : True\n
, \'payment_uid\' : context.getUid()\n
, \'to_date\' : from_date\n
# , \'where_expression\': " section.portal_type = \'Organisation\' "\n
, \'stat\' : True\n
})\n
\n
getInventory = context.getPortalObject().portal_simulation.getInventory\n
# Get previous debit and credit\n
previous_total_debit = r_(getInventory(omit_output=True, **get_inventory_kw))\n
previous_total_credit = r_(getInventory(omit_input =True, **get_inventory_kw))\n
if previous_total_credit != 0:\n
previous_total_credit = - previous_total_credit\n
\n
# Show the previous balance if not empty\n
if previous_total_credit != 0 or previous_total_debit != 0:\n
from Products.ERP5Type.Document import newTempAccountingTransaction\n
\n
net_balance = r_(previous_total_debit - previous_total_credit)\n
previous_balance = newTempAccountingTransaction( context.getPortalObject()\n
, "temp_%s" % context.getUid()\n
)\n
previous_balance.setUid(\'new_000\')\n
\n
previous_balance.edit( \\\n
title = context.Base_translateString("Previous Balance")\n
, date = from_date - 1\n
, portal_type = ""\n
, simulation_state_title = ""\n
, debit = previous_total_debit\n
, credit = previous_total_credit\n
, balance = net_balance\n
, net_balance = net_balance\n
, is_previous_balance = True\n
)\n
new_result.append(previous_balance)\n
\n
\n
# Show / Hide grouping if needed\n
if kw.has_key(\'hide_grouping\'): params[\'hide_grouping\'] = kw[\'hide_grouping\']\n
\n
# FIXME:\n
# using listbox current page number * number of line per listbox page, you can call a\n
# ZSQL Method to initialize net_balance and calculate this only for this page.\n
#\n
# But this is just temporary because some day, erp5_accounting will be rewritten using\n
# only portal_catalog and getInventory. The Iventory API should provide a way to implement\n
# such a net_balance column (in one instruction, so that we do not need to write a wrapping\n
# list method like this one)\n
result = context.BankAccount_zGetAccountingTransactionList( from_date = from_date\n
, at_date = at_date\n
, src__ = src__\n
, **params\n
)\n
if src__:\n
return result\n
\n
# Add related accounting lines one by one in order to calculate intermediate balance\n
for l in result:\n
o = l.getObject()\n
net_balance += l.balance or 0.0\n
if o is not None:\n
c = o.asContext( net_balance = net_balance\n
, balance = l.balance\n
, credit = l.credit\n
, debit = l.debit\n
, date = l.date.toZone(l.getObject().getStartDate().timezone())\n
, section_title = l.section_title\n
, specific_reference = l.specific_reference\n
)\n
new_result.append(c)\n
\n
return new_result\n
<value>
<string>
"""Returns Accounting Transactions where this bank account is payment.\n
"""\n
kw[\'payment_uid\'] = context.getUid()\n
kw[\'node_category\'] = \'account_type/asset/cash/bank\'\n
transaction_list = context.Node_getAccountingTransactionList(**kw)\n
\n
# As we are showing quantities and not asset prices, we use the precision\n
# from this bank account currency\n
if context.getPriceCurrency():\n
container.REQUEST.set(\'precision\',\n
context.getQuantityPrecisionFromResource(context.getPriceCurrency()))\n
\n
return transaction_list\n
</string>
</value>
</item>
<item>
...
...
bt5/erp5_accounting/SkinTemplateItem/portal_skins/erp5_accounting/BankAccount_stat
SourceCredit
.xml
→
bt5/erp5_accounting/SkinTemplateItem/portal_skins/erp5_accounting/BankAccount_stat
Balance
.xml
View file @
aab014a9
...
...
@@ -50,12 +50,13 @@
</item>
<item>
<key>
<string>
_body
</string>
</key>
<value>
<string>
kw[\'omit_output\'] = 1\n
credit = context.BankAccount_statSourceBalance(**kw)\n
if credit :\n
return float(\'%.02f\' % - credit)\n
return 0.0\n
# vim: syntax=python\n
<value>
<string>
"""Total balance (in local currency) of all accounting transactions having this\n
bank account as payment node\n
"""\n
kw[\'payment_uid\'] = context.getUid()\n
kw[\'asset_price\'] = False\n
kw[\'node_category\'] = \'account_type/asset/cash/bank\'\n
return context.Node_statAccountingBalance(**kw)\n
</string>
</value>
</item>
<item>
...
...
@@ -64,7 +65,7 @@ return 0.0\n
</item>
<item>
<key>
<string>
id
</string>
</key>
<value>
<string>
BankAccount_stat
SourceCredit
</string>
</value>
<value>
<string>
BankAccount_stat
Balance
</string>
</value>
</item>
</dictionary>
</pickle>
...
...
bt5/erp5_accounting/SkinTemplateItem/portal_skins/erp5_accounting/BankAccount_stat
SourceBalance
.xml
→
bt5/erp5_accounting/SkinTemplateItem/portal_skins/erp5_accounting/BankAccount_stat
Credit
.xml
View file @
aab014a9
...
...
@@ -50,75 +50,17 @@
</item>
<item>
<key>
<string>
_body
</string>
</key>
<value>
<string>
params = {}\n
pref = context.getPortalObject().portal_preferences\n
precision = context.Base_getPreferredPrecision()\n
<value>
<string>
"""Total credit (in local currency) of all accounting transactions having this\n
bank account as payment\n
"""\n
kw[\'payment_uid\'] = context.getUid()\n
kw[\'omit_asset_increase\'] = 1\n
kw[\'asset_price\'] = False\n
kw[\'node_category\'] = \'account_type/asset/cash/bank\'\n
kw.update(kw[\'selection\'].getParams())\n
\n
###\n
# Get the \'from_date\' parameter\n
from_date = kw.get( \'from_date\'\n
, pref.getPreferredAccountingTransactionFromDate()\n
)\n
if from_date:\n
params[\'from_date\'] = from_date\n
\n
###\n
# Get the \'at_date\' parameter\n
at_date = kw.get( \'at_date\'\n
, pref.getPreferredAccountingTransactionAtDate()\n
)\n
if at_date:\n
params[\'at_date\'] = at_date\n
\n
###\n
# Get the \'simulation_state\' parameter\n
# Sometimes \'simulation_state\' is now as \'transaction_simulation_state\'\n
simulation_state = kw.get( \'transaction_simulation_state\'\n
, None\n
)\n
if not simulation_state:\n
simulation_state = kw.get( \'simulation_state\'\n
, pref.getPreferredAccountingTransactionSimulationStateList()\n
)\n
if simulation_state:\n
params[\'simulation_state\'] = simulation_state\n
\n
###\n
# Get the \'section_category\' parameter\n
# Sometimes \'section_category\' is now as \'transaction_section_category\'\n
section_category = kw.get( \'transaction_section_category\'\n
, None\n
)\n
if not section_category:\n
section_category = kw.get( \'section_category\'\n
, pref.getPreferredAccountingTransactionSectionCategory()\n
)\n
if section_category:\n
params[\'section_category\'] = section_category\n
\n
###\n
# Parameters only used in reports\n
if kw.has_key(\'node_uid\'): params[\'node_uid\'] = kw[\'node_uid\']\n
\n
###\n
# Get omit parameters\n
if kw.get(\'omit_input\') : params[\'omit_input\'] = 1\n
if kw.get(\'omit_output\'): params[\'omit_output\'] = 1\n
\n
params[\'stat\'] = 1\n
\n
if kw.has_key(\'getUid\') : params[\'getUid\'] = kw[\'getUid\']\n
if kw.has_key(\'getParentUid\'): params[\'getParentUid\'] = kw[\'getParentUid\']\n
\n
###\n
# Call the query with selected parameters\n
result = context.BankAccount_zGetAccountingTransactionList(**params)\n
row = result[0]\n
\n
###\n
# Round the result to avoid float bad precision\n
# TODO: use currency precision\n
return context.Base_getRoundValue(row.quantity or 0.0, precision)\n
# here, or 0 is to prevent displaying "- 0"\n
return - context.Node_statAccountingBalance(**kw) or 0\n
</string>
</value>
</item>
<item>
...
...
@@ -127,7 +69,7 @@ return context.Base_getRoundValue(row.quantity or 0.0, precision)\n
</item>
<item>
<key>
<string>
id
</string>
</key>
<value>
<string>
BankAccount_stat
SourceBalance
</string>
</value>
<value>
<string>
BankAccount_stat
Credit
</string>
</value>
</item>
</dictionary>
</pickle>
...
...
bt5/erp5_accounting/SkinTemplateItem/portal_skins/erp5_accounting/BankAccount_stat
Source
Debit.xml
→
bt5/erp5_accounting/SkinTemplateItem/portal_skins/erp5_accounting/BankAccount_statDebit.xml
View file @
aab014a9
...
...
@@ -50,10 +50,16 @@
</item>
<item>
<key>
<string>
_body
</string>
</key>
<value>
<string>
kw[\'omit_input\'] = 1\n
debit = context.BankAccount_statSourceBalance(**kw)\n
return float(\'%.02f\' % debit)\n
# vim: syntax=python\n
<value>
<string>
"""Total debit (in local currency) of all accounting transactions having this\n
bank account as payment\n
"""\n
kw[\'payment_uid\'] = context.getUid()\n
kw[\'omit_asset_decrease\'] = 1\n
kw[\'asset_price\'] = False\n
kw[\'node_category\'] = \'account_type/asset/cash/bank\'\n
kw.update(kw[\'selection\'].getParams())\n
\n
return context.Node_statAccountingBalance(**kw)\n
</string>
</value>
</item>
<item>
...
...
@@ -62,7 +68,7 @@ return float(\'%.02f\' % debit)\n
</item>
<item>
<key>
<string>
id
</string>
</key>
<value>
<string>
BankAccount_stat
Source
Debit
</string>
</value>
<value>
<string>
BankAccount_statDebit
</string>
</value>
</item>
</dictionary>
</pickle>
...
...
bt5/erp5_accounting/SkinTemplateItem/portal_skins/erp5_accounting/BankAccount_viewAccountingTransactionList.xml
View file @
aab014a9
...
...
@@ -53,6 +53,7 @@
<string>
right
</string>
<string>
center
</string>
<string>
bottom
</string>
<string>
hidden
</string>
</list>
</value>
</item>
...
...
@@ -76,6 +77,18 @@
</list>
</value>
</item>
<item>
<key>
<string>
hidden
</string>
</key>
<value>
<list>
<string>
listbox_credit
</string>
<string>
listbox_date
</string>
<string>
listbox_debit
</string>
<string>
listbox_running_total_quantity
</string>
<string>
listbox_total_quantity
</string>
</list>
</value>
</item>
<item>
<key>
<string>
left
</string>
</key>
<value>
...
...
bt5/erp5_accounting/SkinTemplateItem/portal_skins/erp5_accounting/BankAccount_viewAccountingTransactionList/listbox.xml
View file @
aab014a9
...
...
@@ -11,10 +11,12 @@
<value>
<list>
<string>
columns
</string>
<string>
domain_root_list
</string>
<string>
editable_columns
</string>
<string>
list_method
</string>
<string>
portal_types
</string>
<string>
selection_name
</string>
<string>
sort
</string>
<string>
sort_columns
</string>
<string>
stat_columns
</string>
<string>
stat_method
</string>
<string>
title
</string>
...
...
@@ -96,27 +98,31 @@
<value>
<list>
<tuple>
<string>
titl
e
</string>
<string>
Titl
e
</string>
<string>
Movement_getSpecificReferenc
e
</string>
<string>
Referenc
e
</string>
</tuple>
<tuple>
<string>
section_t
itle
</string>
<string>
Section
</string>
<string>
Movement_getExplanationT
itle
</string>
<string>
Title
</string>
</tuple>
<tuple>
<string>
date
</string>
<string>
Date
</string>
</tuple>
<tuple>
<string>
translated_portal_t
ype
</string>
<string>
Movement_getExplanationTranslatedPortalT
ype
</string>
<string>
Type
</string>
</tuple>
<tuple>
<string>
specific_reference
</string>
<string>
Transaction Reference
</string>
<string>
Movement_getExplanationReference
</string>
<string>
Invoice Number
</string>
</tuple>
<tuple>
<string>
Movement_getMirrorSectionTitle
</string>
<string>
Third Party
</string>
</tuple>
<tuple>
<string>
translated_simulation_state_t
itle
</string>
<string>
getTranslatedSimulationStateT
itle
</string>
<string>
State
</string>
</tuple>
<tuple>
...
...
@@ -128,27 +134,47 @@
<string>
Credit
</string>
</tuple>
<tuple>
<string>
balance
</string>
<string>
total_quantity
</string>
<string>
Balance
</string>
</tuple>
<tuple>
<string>
net_balance
</string>
<string>
Net
</string>
<string>
running_total_quantity
</string>
<string>
Running Balance
</string>
</tuple>
</list>
</value>
</item>
<item>
<key>
<string>
domain_root_list
</string>
</key>
<key>
<string>
editable_columns
</string>
</key>
<value>
<list>
<tuple>
<string>
group
</string>
<string>
Group
</string>
<string>
function
</string>
<string>
function
</string>
</tuple>
<tuple>
<string>
project
</string>
<string>
project
</string>
</tuple>
<tuple>
<string>
date
</string>
<string>
date
</string>
</tuple>
<tuple>
<string>
debit
</string>
<string>
debit
</string>
</tuple>
<tuple>
<string>
credit
</string>
<string>
credit
</string>
</tuple>
<tuple>
<string>
region
</string>
<string>
Region
</string>
<string>
total_quantity
</string>
<string>
total_quantity
</string>
</tuple>
<tuple>
<string>
running_total_quantity
</string>
<string>
running_total_quantity
</string>
</tuple>
</list>
</value>
...
...
@@ -194,21 +220,47 @@
<key>
<string>
selection_name
</string>
</key>
<value>
<string>
bank_account_transaction_selection
</string>
</value>
</item>
<item>
<key>
<string>
sort
</string>
</key>
<value>
<list>
<tuple>
<string>
stock.date
</string>
<string>
ASC
</string>
</tuple>
<tuple>
<string>
stock.uid
</string>
<string>
ASC
</string>
</tuple>
</list>
</value>
</item>
<item>
<key>
<string>
sort_columns
</string>
</key>
<value>
<list>
<tuple>
<string>
None
</string>
<string>
sorting disabled
</string>
</tuple>
</list>
</value>
</item>
<item>
<key>
<string>
stat_columns
</string>
</key>
<value>
<list>
<tuple>
<string>
debit
</string>
<string>
BankAccount_stat
Source
Debit
</string>
<string>
BankAccount_statDebit
</string>
</tuple>
<tuple>
<string>
credit
</string>
<string>
BankAccount_stat
Source
Credit
</string>
<string>
BankAccount_statCredit
</string>
</tuple>
<tuple>
<string>
balance
</string>
<string>
BankAccount_stat
Source
Balance
</string>
<string>
total_quantity
</string>
<string>
BankAccount_statBalance
</string>
</tuple>
</list>
</value>
...
...
bt5/erp5_accounting/SkinTemplateItem/portal_skins/erp5_accounting/BankAccount_viewAccountingTransactionList/listbox_credit.xml
0 → 100644
View file @
aab014a9
<?xml version="1.0"?>
<ZopeData>
<record
id=
"1"
aka=
"AAAAAAAAAAE="
>
<pickle>
<global
name=
"ProxyField"
module=
"Products.ERP5Form.ProxyField"
/>
</pickle>
<pickle>
<dictionary>
<item>
<key>
<string>
delegated_list
</string>
</key>
<value>
<list>
<string>
editable
</string>
</list>
</value>
</item>
<item>
<key>
<string>
id
</string>
</key>
<value>
<string>
listbox_credit
</string>
</value>
</item>
<item>
<key>
<string>
message_values
</string>
</key>
<value>
<dictionary>
<item>
<key>
<string>
external_validator_failed
</string>
</key>
<value>
<string>
The input failed the external validator.
</string>
</value>
</item>
</dictionary>
</value>
</item>
<item>
<key>
<string>
overrides
</string>
</key>
<value>
<dictionary>
<item>
<key>
<string>
field_id
</string>
</key>
<value>
<string></string>
</value>
</item>
<item>
<key>
<string>
form_id
</string>
</key>
<value>
<string></string>
</value>
</item>
<item>
<key>
<string>
target
</string>
</key>
<value>
<string></string>
</value>
</item>
</dictionary>
</value>
</item>
<item>
<key>
<string>
tales
</string>
</key>
<value>
<dictionary>
<item>
<key>
<string>
field_id
</string>
</key>
<value>
<string></string>
</value>
</item>
<item>
<key>
<string>
form_id
</string>
</key>
<value>
<string></string>
</value>
</item>
<item>
<key>
<string>
target
</string>
</key>
<value>
<string></string>
</value>
</item>
</dictionary>
</value>
</item>
<item>
<key>
<string>
values
</string>
</key>
<value>
<dictionary>
<item>
<key>
<string>
editable
</string>
</key>
<value>
<int>
0
</int>
</value>
</item>
<item>
<key>
<string>
field_id
</string>
</key>
<value>
<string>
my_view_mode_money_quantity
</string>
</value>
</item>
<item>
<key>
<string>
form_id
</string>
</key>
<value>
<string>
Base_viewFieldLibrary
</string>
</value>
</item>
<item>
<key>
<string>
target
</string>
</key>
<value>
<string>
Click to edit the target
</string>
</value>
</item>
</dictionary>
</value>
</item>
</dictionary>
</pickle>
</record>
</ZopeData>
bt5/erp5_accounting/SkinTemplateItem/portal_skins/erp5_accounting/BankAccount_viewAccountingTransactionList/listbox_date.xml
0 → 100644
View file @
aab014a9
This diff is collapsed.
Click to expand it.
bt5/erp5_accounting/SkinTemplateItem/portal_skins/erp5_accounting/BankAccount_viewAccountingTransactionList/listbox_debit.xml
0 → 100644
View file @
aab014a9
<?xml version="1.0"?>
<ZopeData>
<record
id=
"1"
aka=
"AAAAAAAAAAE="
>
<pickle>
<global
name=
"ProxyField"
module=
"Products.ERP5Form.ProxyField"
/>
</pickle>
<pickle>
<dictionary>
<item>
<key>
<string>
delegated_list
</string>
</key>
<value>
<list>
<string>
editable
</string>
</list>
</value>
</item>
<item>
<key>
<string>
id
</string>
</key>
<value>
<string>
listbox_debit
</string>
</value>
</item>
<item>
<key>
<string>
message_values
</string>
</key>
<value>
<dictionary>
<item>
<key>
<string>
external_validator_failed
</string>
</key>
<value>
<string>
The input failed the external validator.
</string>
</value>
</item>
</dictionary>
</value>
</item>
<item>
<key>
<string>
overrides
</string>
</key>
<value>
<dictionary>
<item>
<key>
<string>
field_id
</string>
</key>
<value>
<string></string>
</value>
</item>
<item>
<key>
<string>
form_id
</string>
</key>
<value>
<string></string>
</value>
</item>
<item>
<key>
<string>
target
</string>
</key>
<value>
<string></string>
</value>
</item>
</dictionary>
</value>
</item>
<item>
<key>
<string>
tales
</string>
</key>
<value>
<dictionary>
<item>
<key>
<string>
editable
</string>
</key>
<value>
<string></string>
</value>
</item>
<item>
<key>
<string>
field_id
</string>
</key>
<value>
<string></string>
</value>
</item>
<item>
<key>
<string>
form_id
</string>
</key>
<value>
<string></string>
</value>
</item>
<item>
<key>
<string>
target
</string>
</key>
<value>
<string></string>
</value>
</item>
</dictionary>
</value>
</item>
<item>
<key>
<string>
values
</string>
</key>
<value>
<dictionary>
<item>
<key>
<string>
editable
</string>
</key>
<value>
<int>
0
</int>
</value>
</item>
<item>
<key>
<string>
field_id
</string>
</key>
<value>
<string>
my_view_mode_money_quantity
</string>
</value>
</item>
<item>
<key>
<string>
form_id
</string>
</key>
<value>
<string>
Base_viewFieldLibrary
</string>
</value>
</item>
<item>
<key>
<string>
target
</string>
</key>
<value>
<string>
Click to edit the target
</string>
</value>
</item>
</dictionary>
</value>
</item>
</dictionary>
</pickle>
</record>
</ZopeData>
bt5/erp5_accounting/SkinTemplateItem/portal_skins/erp5_accounting/BankAccount_viewAccountingTransactionList/listbox_running_total_quantity.xml
0 → 100644
View file @
aab014a9
<?xml version="1.0"?>
<ZopeData>
<record
id=
"1"
aka=
"AAAAAAAAAAE="
>
<pickle>
<global
name=
"ProxyField"
module=
"Products.ERP5Form.ProxyField"
/>
</pickle>
<pickle>
<dictionary>
<item>
<key>
<string>
delegated_list
</string>
</key>
<value>
<list>
<string>
editable
</string>
</list>
</value>
</item>
<item>
<key>
<string>
id
</string>
</key>
<value>
<string>
listbox_running_total_quantity
</string>
</value>
</item>
<item>
<key>
<string>
message_values
</string>
</key>
<value>
<dictionary>
<item>
<key>
<string>
external_validator_failed
</string>
</key>
<value>
<string>
The input failed the external validator.
</string>
</value>
</item>
</dictionary>
</value>
</item>
<item>
<key>
<string>
overrides
</string>
</key>
<value>
<dictionary>
<item>
<key>
<string>
field_id
</string>
</key>
<value>
<string></string>
</value>
</item>
<item>
<key>
<string>
form_id
</string>
</key>
<value>
<string></string>
</value>
</item>
<item>
<key>
<string>
target
</string>
</key>
<value>
<string></string>
</value>
</item>
</dictionary>
</value>
</item>
<item>
<key>
<string>
tales
</string>
</key>
<value>
<dictionary>
<item>
<key>
<string>
field_id
</string>
</key>
<value>
<string></string>
</value>
</item>
<item>
<key>
<string>
form_id
</string>
</key>
<value>
<string></string>
</value>
</item>
<item>
<key>
<string>
target
</string>
</key>
<value>
<string></string>
</value>
</item>
</dictionary>
</value>
</item>
<item>
<key>
<string>
values
</string>
</key>
<value>
<dictionary>
<item>
<key>
<string>
editable
</string>
</key>
<value>
<int>
0
</int>
</value>
</item>
<item>
<key>
<string>
field_id
</string>
</key>
<value>
<string>
my_view_mode_money_quantity
</string>
</value>
</item>
<item>
<key>
<string>
form_id
</string>
</key>
<value>
<string>
Base_viewFieldLibrary
</string>
</value>
</item>
<item>
<key>
<string>
target
</string>
</key>
<value>
<string>
Click to edit the target
</string>
</value>
</item>
</dictionary>
</value>
</item>
</dictionary>
</pickle>
</record>
</ZopeData>
bt5/erp5_accounting/SkinTemplateItem/portal_skins/erp5_accounting/BankAccount_viewAccountingTransactionList/listbox_total_quantity.xml
0 → 100644
View file @
aab014a9
<?xml version="1.0"?>
<ZopeData>
<record
id=
"1"
aka=
"AAAAAAAAAAE="
>
<pickle>
<global
name=
"ProxyField"
module=
"Products.ERP5Form.ProxyField"
/>
</pickle>
<pickle>
<dictionary>
<item>
<key>
<string>
delegated_list
</string>
</key>
<value>
<list>
<string>
editable
</string>
</list>
</value>
</item>
<item>
<key>
<string>
id
</string>
</key>
<value>
<string>
listbox_total_quantity
</string>
</value>
</item>
<item>
<key>
<string>
message_values
</string>
</key>
<value>
<dictionary>
<item>
<key>
<string>
external_validator_failed
</string>
</key>
<value>
<string>
The input failed the external validator.
</string>
</value>
</item>
</dictionary>
</value>
</item>
<item>
<key>
<string>
overrides
</string>
</key>
<value>
<dictionary>
<item>
<key>
<string>
field_id
</string>
</key>
<value>
<string></string>
</value>
</item>
<item>
<key>
<string>
form_id
</string>
</key>
<value>
<string></string>
</value>
</item>
<item>
<key>
<string>
target
</string>
</key>
<value>
<string></string>
</value>
</item>
</dictionary>
</value>
</item>
<item>
<key>
<string>
tales
</string>
</key>
<value>
<dictionary>
<item>
<key>
<string>
field_id
</string>
</key>
<value>
<string></string>
</value>
</item>
<item>
<key>
<string>
form_id
</string>
</key>
<value>
<string></string>
</value>
</item>
<item>
<key>
<string>
target
</string>
</key>
<value>
<string></string>
</value>
</item>
</dictionary>
</value>
</item>
<item>
<key>
<string>
values
</string>
</key>
<value>
<dictionary>
<item>
<key>
<string>
editable
</string>
</key>
<value>
<int>
0
</int>
</value>
</item>
<item>
<key>
<string>
field_id
</string>
</key>
<value>
<string>
my_view_mode_money_quantity
</string>
</value>
</item>
<item>
<key>
<string>
form_id
</string>
</key>
<value>
<string>
Base_viewFieldLibrary
</string>
</value>
</item>
<item>
<key>
<string>
target
</string>
</key>
<value>
<string>
Click to edit the target
</string>
</value>
</item>
</dictionary>
</value>
</item>
</dictionary>
</pickle>
</record>
</ZopeData>
bt5/erp5_accounting/SkinTemplateItem/portal_skins/erp5_accounting/BankAccount_zGetAccountingTransactionList.xml
deleted
100644 → 0
View file @
fe87ebc8
<?xml version="1.0"?>
<ZopeData>
<record
id=
"1"
aka=
"AAAAAAAAAAE="
>
<pickle>
<global
name=
"SQL"
module=
"Products.ZSQLMethods.SQL"
/>
</pickle>
<pickle>
<dictionary>
<item>
<key>
<string>
_Use_Database_Methods_Permission
</string>
</key>
<value>
<list>
<string>
Member
</string>
</list>
</value>
</item>
<item>
<key>
<string>
allow_simple_one_argument_traversal
</string>
</key>
<value>
<none/>
</value>
</item>
<item>
<key>
<string>
arguments_src
</string>
</key>
<value>
<string>
getUid\r\n
getParentUid\r\n
query\r\n
omit_input\r\n
omit_output\r\n
resource_uid:list\r\n
from_date\r\n
at_date\r\n
to_date\r\n
simulation_state:list\r\n
node_uid:list\r\n
stat
</string>
</value>
</item>
<item>
<key>
<string>
cache_time_
</string>
</key>
<value>
<int>
0
</int>
</value>
</item>
<item>
<key>
<string>
class_file_
</string>
</key>
<value>
<string>
ZSQLCatalog.zsqlbrain
</string>
</value>
</item>
<item>
<key>
<string>
class_name_
</string>
</key>
<value>
<string>
ZSQLBrain
</string>
</value>
</item>
<item>
<key>
<string>
connection_hook
</string>
</key>
<value>
<string></string>
</value>
</item>
<item>
<key>
<string>
connection_id
</string>
</key>
<value>
<string>
erp5_sql_connection
</string>
</value>
</item>
<item>
<key>
<string>
id
</string>
</key>
<value>
<string>
BankAccount_zGetAccountingTransactionList
</string>
</value>
</item>
<item>
<key>
<string>
max_cache_
</string>
</key>
<value>
<int>
100
</int>
</value>
</item>
<item>
<key>
<string>
max_rows_
</string>
</key>
<value>
<int>
0
</int>
</value>
</item>
<item>
<key>
<string>
src
</string>
</key>
<value>
<string
encoding=
"cdata"
>
<![CDATA[
<dtml-if getParentUid>
\n
SELECT\n
<dtml-if
stat
>
\n
SUM(stock.quantity) AS quantity\n
<dtml-else>
\n
catalog.uid\n
, catalog.path\n
, stock.date as date\n
, section.title as section_title\n
, IF(delivery.source_section_uid = stock.section_uid,\n
catalog.source_reference,\n
catalog.destination_reference) AS specific_reference\n
, IFNULL(SUM(IF(stock.quantity > 0, stock.quantity, 0)), 0) AS debit\n
, IFNULL(SUM(IF(stock.quantity
< 0
,
-
stock.quantity,
0)),
0)
AS
credit\n
,
-
IFNULL(SUM(IF(stock.quantity
<
0,
-
stock.quantity,
0)),
0)\n
+
IFNULL(SUM(IF(stock.quantity
>
0, stock.quantity, 0)), 0) AS balance \n
</dtml-if>
\n
FROM\n
movement\n
, catalog AS child\n
, catalog\n
, catalog AS node\n
, category AS node_category\n
, delivery\n
, stock\n
LEFT JOIN catalog AS section\n
ON stock.mirror_section_uid = section.uid\n
<dtml-if
query
>
\n
, category\n
</dtml-if>
\n
WHERE stock.section_uid =
<dtml-var
getParentUid
>
\n
AND stock.payment_uid =
<dtml-var
getUid
>
\n
AND delivery.uid = catalog.uid\n
AND child.uid = stock.uid\n
AND child.parent_uid = catalog.uid\n
AND movement.uid = stock.uid\n
AND movement.is_accountable = 1\n
AND node.uid = stock.node_uid\n
AND node.uid = node_category.uid\n
AND node_category.category_uid =
<dtml-sqlvar
\n
"portal_categories.account_type.asset.cash.bank.getUid()"
type=
"int"
>
\n
<dtml-if
node_uid
>
\n
AND (\n
<dtml-in
node_uid
>
\n
stock.node_uid =
<dtml-sqlvar
sequence-item
type=
"int"
>
\n
<dtml-unless
sequence-end
>
OR
</dtml-unless>
\n
</dtml-in>
\n
)\n
</dtml-if>
\n
<dtml-if
resource_uid
>
\n
AND (\n
<dtml-in
resource_uid
>
\n
movement.resource_uid =
<dtml-sqlvar
sequence-item
type=
"int"
>
\n
<dtml-unless
sequence-end
>
OR
</dtml-unless>
\n
</dtml-in>
\n
)\n
</dtml-if>
\n
<dtml-if
from_date
>
\n
AND stock.date >=
<dtml-sqlvar
from_date
type=
"datetime"
>
\n
</dtml-if>
\n
<dtml-if
at_date
>
\n
AND stock.date
<
=
<dtml-sqlvar
at_date
type=
"datetime"
>
\n
</dtml-if>
\n
<dtml-if
to_date
>
\n
AND stock.date
<
<dtml-sqlvar
to_date
type=
"datetime"
>
\n
</dtml-if>
\n
<dtml-if
omit_input
>
\n
AND stock.quantity > 0\n
</dtml-if>
\n
<dtml-if
omit_output
>
\n
AND stock.quantity
< 0
\n
</dtml-if
>
\n
<dtml-if
simulation_state
>
\n
AND (\n
<dtml-in
simulation_state
>
\n
catalog.simulation_state =
<dtml-sqlvar
sequence-item
type=
"string"
>
\n
<dtml-unless
sequence-end
>
OR
</dtml-unless>
\n
</dtml-in>
\n
)\n
</dtml-if>
\n
<dtml-if
query
>
\n
AND category.uid = stock.section_uid\n
AND
<dtml-var
query
>
\n
</dtml-if>
\n
<dtml-unless
stat
>
\n
GROUP BY catalog.uid\n
</dtml-unless>
\n
ORDER BY stock.date, movement.uid\n
</dtml-if>
\n
]]>
</string>
</value>
</item>
<item>
<key>
<string>
title
</string>
</key>
<value>
<string></string>
</value>
</item>
</dictionary>
</pickle>
</record>
</ZopeData>
bt5/erp5_accounting/SkinTemplateItem/portal_skins/erp5_accounting/Node_statAccountingBalance.xml
View file @
aab014a9
...
...
@@ -54,9 +54,13 @@
portal = context.getPortalObject()\n
\n
params = portal.ERP5Accounting_getParams(selection_name=selection_name)\n
getInventoryAssetPrice = portal.portal_simulation.getInventoryAssetPrice\n
getSelectionDomainDictFor = context.portal_selections.getSelectionDomainDictFor\n
\n
if asset_price:\n
getInventory = portal.portal_simulation.getInventoryAssetPrice\n
else:\n
getInventory = portal.portal_simulation.getInventory\n
\n
if kw.get(\'node_uid\'):\n
params[\'node_uid\'] = kw[\'node_uid\']\n
\n
...
...
@@ -138,26 +142,26 @@ if period_start_date and params.get(\'node_uid\'):\n
# balance at the beginning of the period, plus debit or credit from this\n
# beginning of period to the from_date\n
at_date = params.pop(\'at_date\', None)\n
period_openning_balance = getInventory
AssetPrice
(\n
period_openning_balance = getInventory(\n
selection_domain=getSelectionDomainDictFor(selection_name),\n
to_date=period_start_date,\n
**params)\n
if omit_asset_decrease:\n
return getInventory
AssetPrice
(omit_asset_decrease=1,\n
return getInventory(omit_asset_decrease=1,\n
from_date=period_start_date,\n
at_date=at_date,\n
**params) + max(period_openning_balance, 0)\n
elif omit_asset_increase:\n
return getInventory
AssetPrice
(omit_asset_increase=1,\n
return getInventory(omit_asset_increase=1,\n
from_date=period_start_date,\n
at_date=at_date,\n
**params) - max(-period_openning_balance, 0)\n
return getInventory
AssetPrice
(\n
return getInventory(\n
from_date=period_start_date,\n
at_date=at_date,\n
**params) + period_openning_balance\n
\n
return getInventory
AssetPrice
(\n
return getInventory(\n
omit_asset_increase=omit_asset_increase,\n
omit_asset_decrease=omit_asset_decrease,\n
selection_domain=getSelectionDomainDictFor(selection_name),\n
...
...
@@ -166,7 +170,7 @@ return getInventoryAssetPrice(\n
</item>
<item>
<key>
<string>
_params
</string>
</key>
<value>
<string>
selection=None, omit_asset_increase=0, omit_asset_decrease=0, selection_name=None, **kw
</string>
</value>
<value>
<string>
selection=None, omit_asset_increase=0, omit_asset_decrease=0,
asset_price=True,
selection_name=None, **kw
</string>
</value>
</item>
<item>
<key>
<string>
_proxy_roles
</string>
</key>
...
...
bt5/erp5_accounting/bt/revision
View file @
aab014a9
151
5
151
6
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment