Usina BRAdvPL Guide
Sign in
← All topics
ENTRY POINTUnder review

F290BTIT

User Function F290BTIT()

Defines the columns shown when selecting payables to generate a payable invoice.

F290BTITFINA290aCamposPARAMIXBACloneAAdd
01 · OVERVIEW

Overview

TOTVS documents F290BTIT for configuring columns in FINA290 payable selection. (Refs. 1–2) TDN describes aCampos as the default columns and the aCPO return as the columns to display. The community listing places the call in FA290AUT, assigning its result to aCampos. (Ref. 4) The TDN page is historical, scoped to Protheus 10; the support article associates the entry point with FINA290 without replacing target release and patch validation. Rodolfo Vacari’s source, dated 2018-02-14, in douglasbaciodilatte/bacio_di_latte clones PARAMIXB and immediately assigns {} to the copy. It rebuilds the list instead of preserving the defaults. It adds marking, prefix, number, value and two identical E2_EMISSAO entries. Duplication was observed in the code; its visual effect was not tested. The header mentions FA290 and cost center recording; the analyzed body only builds and returns the array without write instructions. The complete file was read at the referenced commit; no reproduction license was identified, so it was analyzed without republishing the complete source. (Ref. 5)

02 · SYNTAX

Syntax

User Function F290BTIT()

Parameters

PARAMIXB / aCampos
Array of RecordExecution context

Array of default columns. The call passes aCampos directly, not {aCampos}; PARAMIXB represents this list rather than a wrapper containing the entire list in its first element. The official example uses AClone(PARAMIXB). (Refs. 1 and 3)

Return value

Array of columns to display. The official example returns aCPO and the community listing assigns the return to aCampos. (Refs. 1 and 4) Verify undocumented layout details in the target environment before adding fields.

03 · PRACTICAL EXAMPLE

Editorial baseline preserving default columns

#Include "Protheus.ch"

User Function F290BTIT()
    // Editorial baseline based on the TDN contract (ref. 1).
    // Keeps received columns; this baseline does not add any fields.
    Local aColumns := AClone(PARAMIXB)

Return aColumns
Expected result

Returns a copy of the received list, retaining its column definitions. A starting point after verifying the target release context.

04 · PRACTICAL EXAMPLE

Four-column replacement: adapted official example

#Include "Protheus.ch"

User Function F290BTIT()
    // Editorial adaptation of the TOTVS example (ref. 1).
    // Starts empty because the purpose is to replace the default set.
    // There is no reason to clone an array only to discard it immediately.
    Local aColumns := {}

    // Keeps the marking column included in the official example.
    AAdd(aColumns, {"E2_OK", "", "  ", ""})
    AAdd(aColumns, {"E2_PREFIXO", "", "Prefix", "@!"})
    AAdd(aColumns, {"E2_NUM", "", "Number", "@!"})
    AAdd(aColumns, {"E2_VALOR", "", "Value", "@E 999,999,999,999.99"})

Return aColumns
Expected result

Proposes marking, prefix, number and value, following the official example selection. Other default columns are absent from the returned list; not yet run in Protheus.

BEST PRACTICES
  • The two examples are alternatives; compile only one F290BTIT implementation.
  • Choose explicitly between preserving the list with AClone and rebuilding it from {}. Cloning and then clearing discards the copy.
  • In the official example, each definition has four positions: field, empty string, heading and formatting expression. This is an example observation; the full meaning of the second position was not documented in this research.
  • Retain the marking column in the adaptation and test payable selection. Do not confuse column changes with filtering eligible payables.
  • Before adding a field, check availability in the screen context, heading, formatting and existing columns. Do not repeat E2_EMISSAO without a defined purpose.
  • Editorial test plan: compare the default screen, preserved list and replacement list; check marking, values and invoice generation. Record release and patch.
  • Under review: sources and code analyzed without Protheus compilation or execution. Transaction position remains unconfirmed.

Related content

REFERENCES
  1. TOTVS. F290BTIT - Seleção de títulos para fatura a pagar. TDN. Abrangência histórica: Protheus 10. Accessed on 2026-10-23.
  2. TOTVS. SIGAFIN - FINA290 - Pontos de Entrada. Central de Atendimento, 29/09/2026. Accessed on 2026-10-23.
  3. TOTVS. Pontos de Entrada. TDN. Indexed evidence. Accessed on 2026-10-23.
  4. EURAI. Pontos de Entrada P12.2210 - Parte 2. Universo do Desenvolvedor, 2023. Accessed on 2026-10-23.
  5. VACARI, Rodolfo. F290BTIT.prw, 14/02/2018. douglasbaciodilatte/bacio_di_latte, Financeiro/Pontos de Entrada/F290BTIT.prw. Commit 7704fda85159a986eae8b325fae02937ae88fb0f. Accessed on 2026-10-23.
Status
Under review
Page created on
Last reviewed on
Original language
Portuguese
Reviewed by
Usina.BR
0 approved comment(s)

Comments

There are no approved comments yet.

Sign in with Google or Microsoft to comment.

Powered by Usina Docs · Alpha