final_balance_if_credit=max(-closing_balance, 0) or 0,
  )

  sort_key = (node_string_index, node_title, mirror_section_title)
  analytic_dict = {}
  for analytic, uid in zip(group_analytic, analytic_key_list):
    title = getAnalyticTitleFromUid(uid)
    analytic_dict[analytic] = title
    if analytic == 'section_uid':
      analytic_dict['Movement_getSectionPriceCurrency'] = getSectionPriceCurrencyFromSectionUid(uid)
      # We sort on section title first
      sort_key = (title, ) + sort_key
    sort_key += (title, )

  analytic_dict['sort_key'] = sort_key
  line.update(analytic_dict)
  line_list.append(line)

if not show_empty_accounts:
  line_list = [
    line for line in line_list
    if line['debit'] or
       line['credit'] or
       line['initial_credit_balance'] or
       line['initial_debit_balance']
  ]
line_list.sort(key=lambda obj: obj['sort_key'])

# cache values for stat
request.set('TrialBalance.total_initial_debit_balance', total_initial_debit_balance)
request.set('TrialBalance.total_initial_credit_balance', total_initial_credit_balance)
                portal_type=transaction.getTranslatedPortalType(),
                specific_reference=specific_reference,
                parent_reference=transaction_reference,
                mirror_section_title=mirror_section_title,
                node_title=getAccountId(brain.node_relative_url),
                date=date,
                debit=debit,
                credit=credit,)
  analytic_info = {}
  for analytic_column, analytic_column_title in analytic_column_list: # pylint: disable=unused-variable
    if analytic_column == 'project':
      analytic_info['project'] = brain.Movement_getProjectTitle()
    elif analytic_column == 'funding':
      analytic_info['funding'] = brain.Movement_getFundingTitle()
    elif analytic_column == 'function':
      analytic_info['function'] = brain.Movement_getFunctionTitle()
    else:
      analytic_info[analytic_column] = mvt.getProperty(analytic_column)

  line.update(analytic_info)
  line_list.append(line)

request.set(
      'AccountingTransactionModule_getJournalSectionLineList.total_debit',
       total_debit)
request.set(
      'AccountingTransactionModule_getJournalSectionLineList.total_credit',
       total_credit)

return line_list
Ejemplo n.º 3
0
        specific_reference=specific_reference,
        parent_reference=transaction_reference,
        mirror_section_title=mirror_section_title,
        node_title=getAccountId(brain.node_relative_url),
        date=date,
        debit=debit,
        credit=credit,
    )
    analytic_info = {}
    for analytic_column, analytic_column_title in analytic_column_list:
        if analytic_column == 'project':
            analytic_info['project'] = brain.Movement_getProjectTitle()
        elif analytic_column == 'funding':
            analytic_info['funding'] = brain.Movement_getFundingTitle()
        elif analytic_column == 'function':
            analytic_info['function'] = brain.Movement_getFunctionTitle()
        else:
            analytic_info[analytic_column] = mvt.getProperty(analytic_column)

    line.update(analytic_info)
    line_list.append(line)

request.set(
    'AccountingTransactionModule_getJournalSectionLineList.total_debit',
    total_debit)
request.set(
    'AccountingTransactionModule_getJournalSectionLineList.total_credit',
    total_credit)

return line_list
Ejemplo n.º 4
0
    final_balance_if_credit=max(-closing_balance, 0) or 0,
  )

  sort_key = (node_string_index, node_title, mirror_section_title)
  analytic_dict = {}
  for analytic, uid in zip(group_analytic, analytic_key_list):
    title = getAnalyticTitleFromUid(uid)
    analytic_dict[analytic] = title
    if analytic == 'section_uid':
      analytic_dict['Movement_getSectionPriceCurrency'] = getSectionPriceCurrencyFromSectionUid(uid)
      # We sort on section title first
      sort_key = (title, ) + sort_key
    sort_key += (title, )

  analytic_dict['sort_key'] = sort_key
  line.update(analytic_dict)
  line_list.append(line)

if not show_empty_accounts:
  line_list = [
    line for line in line_list
    if line['debit'] or
       line['credit'] or
       line['initial_credit_balance'] or
       line['initial_debit_balance']
  ]
line_list.sort(key=lambda obj: obj['sort_key'])

# cache values for stat
request.set('TrialBalance.total_initial_debit_balance', total_initial_debit_balance)
request.set('TrialBalance.total_initial_credit_balance', total_initial_credit_balance)