Dicionário Protheus
Início

Tabela ACO no Protheus

Regras de Desconto

O que é a tabela ACO no Protheus?

A tabela ACO faz parte do sistema ERP Protheus da TOTVS e é utilizada para regras de desconto.

Ela pertence ao dicionário de dados do Protheus (SX2) e armazena informações essenciais utilizadas em processos como cadastros, movimentações e integrações do sistema.

A tabela ACO possui diversos campos (SX3), cada um com regras específicas como tipo, tamanho e validações, além de índices (SIX) que otimizam a performance das consultas.

Nesta página você pode consultar a estrutura completa da tabela ACO, incluindo todos os campos e índices relacionados.

Propriedades da Tabela

Propriedade Valor
X2_CHAVE ACO
X2_PATH \DATA\
X2_ARQUIVO ACO990
X2_NOME Regras de Desconto
X2_NOMESPA Reglas de Descuento
X2_NOMEENG Discount Rules
X2_ROTINA -
X2_MODO C
X2_MODOUN E
X2_MODOEMP E
X2_DELET 0
X2_TTS -
X2_UNICO ACO_FILIAL+ACO_CODREG
X2_PYME S
X2_MODULO 5
X2_DISPLAY ACO_CODREG+ACO_DESCRI
X2_SYSOBJ FATA080
X2_USROBJ -
X2_POSLGT 1
X2_CLOB 2
X2_AUTREC 2
X2_TAMFIL 2
X2_TAMUN 0
X2_TAMEMP 0
X2_STAMP 2
X2_INSDT 2
D_E_L_E_T_ -
R_E_C_N_O_ 137
R_E_C_D_E_L_ 0

Campos da Tabela ACO (22 campos)

X3_ARQUIVO X3_ORDEM X3_CAMPO X3_TIPO X3_TAMANHO X3_DECIMAL X3_TITULO X3_TITSPA X3_TITENG X3_DESCRIC X3_DESCSPA X3_DESCENG X3_PICTURE X3_VALID X3_USADO X3_RELACAO X3_F3 X3_NIVEL X3_RESERV X3_CHECK X3_TRIGGER X3_PROPRI X3_BROWSE X3_VISUAL X3_CONTEXT X3_OBRIGAT X3_VLDUSER X3_CBOX X3_CBOXSPA X3_CBOXENG X3_PICTVAR X3_WHEN X3_INIBRW X3_GRPSXG X3_FOLDER X3_PYME X3_CONDSQL X3_CHKSQL X3_IDXSRV X3_ORTOGRA X3_IDXFLD X3_TELA X3_PICBRV X3_AGRUP X3_POSLGT X3_MODAL X3_CHKSUM X3_ADDSUM D_E_L_E_T_ R_E_C_N_O_ R_E_C_D_E_L_
ACO 01 ACO_FILIAL C 2 0 Filial Sucursal Branch Filial do Sistema Sucursal del Sistema System Branch - - x x x x x x x x x x x x x x x - - 1 x - - - N - - - - - - - - - - 033 - S - - N N N - - - 1 2 - - - 1943 0
ACO 02 ACO_CODREG C 6 0 Cod. Regra Cod. Regla Rule Cd. Codigo da Regra Codigo de la Regla Rule Cd. @! ExistChav("ACO") x x x x x x x x x x x x x x x xx GetSx8Num("ACO","ACO_CODREG") - 1 xx - - - S V - - - - - - - - - - - S - - S N N - - - 1 1 - - - 1944 0
ACO 03 ACO_DESCRI C 30 0 Descricao Descripcion Description Descricao Descripcion Description @! Texto() x x x x x x x x x x x x x x x x - - 1 xx xx - - - S - - - - - - - - - - - - S - - S N N - - - 1 1 - - - 1945 0
ACO 04 ACO_CODCLI C 6 0 Cliente Cliente Customer Codigo do Cliente Codigo del Cliente Customer's Code @! Vazio().Or.ExistCpo("SA1",M->ACO_CODCLI+RTRIM(M->ACO_LOJA),,,,!EMPTY(M->ACO_LOJA)) x x x x x x x x x x x x x x x x - SA1 1 x - S - S - - - - - - - - - - 001 - S - - S N N - - - 1 2 - - - 1946 0
ACO 05 ACO_LOJA C 2 0 Loja Tienda Store Loja do Cliente Tienda del Cliente Customer's store @! Vazio().Or.ExistCpo("SA1",M->ACO_CODCLI+M->ACO_LOJA) x x x x x x x x x x x x x x x x - - 1 x - S - S - - - - - - - - - - 002 - S - - N N N - - - 1 2 - - - 1947 0
ACO 06 ACO_NOME C 50 0 Nome Nombre Name Nome Nombre Name @! - x x x x x x x x x x x x x x x x IF(!INCLUI,Posicione("SA1",1,xFilial("SA1")+ACO->ACO_CODCLI+ACO->ACO_LOJA,"A1_NOME"),"") - 1 xx x x - - - N V V - - - - - - - Posicione("SA1",1,xFilial("SA1")+ACO->ACO_CODCLI+ACO->ACO_LOJA,"A1_NOME") 175 - S - - N N N - - - 1 2 - - - 1948 0
ACO 07 ACO_CODTAB C 3 0 Tabela Prec. Tabla Precio Pricelist Tabela de Precos Tabla de Precios Pricelist @! Vazio().Or.(ExistCpo("DA0") .And. MaVldTabPrc(M->ACO_CODTAB)) x x x x x x x x x x x x x x x x - DA0 1 x - - - N - - - - - - - - - - 172 - S - - N N N - - - 1 2 - - - 1949 0
ACO 08 ACO_CONDPG C 3 0 Cond.Pagto Condic.Pago Paym.Cond Condição de pagamento Condicion de pago Payment Condition @! Vazio().Or.ExistCpo("SE4") xxxxxxxxxxxxx xxxxxxxxxxxx xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx xxx x x x x x xxx - SE4 1 xx - - - N - - - - - - - - - - - - S - - N N N - - - 1 2 - - - 1950 0
ACO 09 ACO_FORMPG C 6 0 Form.Pagto Forma Pago Payment Cond Forma de Pagamento Forma de Pago Payment Cond. @! Vazio().Or.ExistCpo("SX5","24"+M->ACO_FORMPG) xxxxxxxxxxxxx xxxxxxxxxxxx xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx xxx x x x x x xxx - 24 1 xx - - - N - - - - - - - - - - - - S - - N N N - - - 1 2 - - - 1951 0
ACO 10 ACO_FAIXA N 12 2 Faixa de Vlr Inter.de Vlr Value Range Valor do Documento Valor del Documento Document Value @e 999,999,999.99 Positivo() x x x x x x x x x x x x x x x x - - 1 xx x - - - N - - - - - - - - - - - - S - - N N N - - - 1 2 - - - 1952 0
ACO 11 ACO_MOEDA N 2 0 Moeda Moneda Currency Moeda do Valor do Doc. Moneda Valor del Doc. Document Value Currency 99 Positivo() x x x x x x x x x x x x x x x x - - 1 xx - - - N - - - - - - - - - - - - S - - N N N - - - 1 1 - - - 1953 0
ACO 12 ACO_PERDES N 6 2 % Desconto % Descuento % Discount % Desconto % Descuento % Discount @e 999.99 (M->ACO_PERDES >= 0) .AND. (M->ACO_PERDES < 100) x x x x x x x x x x x x x x x x - - 1 xx x - S - N - - - - - - - - - - - - S - - N N N - - - 1 2 - - - 1954 0
ACO 13 ACO_CFAIXA C 20 0 Faixa Intervalo Range Faixa de Valor Intervalo de Valor Value Range @! - x x x x x x x x x x x x x x x - - 1 xx x - - - N - - - - - - - - - - - - S - - N N N - - - 1 2 - - - 1955 0
ACO 14 ACO_TPHORA C 1 0 Tipo horario Tipo horario Time Type Tipo horario Tipo horario Time Type ! Pertence("12") x x x x x x x x x x x x x x x x "1" - 1 xx - - - S - - - - 1=Unico;2=Recorrente 1=Unico;2=Recursivo 1=Unique; 2=Recurrent - - - - - S - - N N N - - - 1 1 - - - 1956 0
ACO 15 ACO_HORADE C 5 0 Hora Inicial Hora Inicial Initial Hour Hora Inicial Hora Inicial Initial Hour 99:99 AtVldHora(M->ACO_HORADE) x x x x x x x x x x x x x x x x "00:00" - 1 xx - - - S - - - - - - - - - - - - S - - N N N - - - 1 1 - - - 1957 0
ACO 16 ACO_HORATE C 5 0 Hora Final Hora Final Final Hour Hora Final Hora Final Final Hour 99:99 AtVldHora(M->ACO_HORATE) x x x x x x x x x x x x x x x x "23:59" - 1 xx - - - S - - - - - - - - - - - - S - - N N N - - - 1 1 - - - 1958 0
ACO 17 ACO_DATDE D 8 0 Data Inicial Fecha Ini. Initial Date Data Inicial Fecha Inicial Initial Date - - x x x x x x x x x x x x x x x x DDATABASE - 1 xx - - - S - - - - - - - - - - - - S - - N N N - - - 1 1 - - - 1959 0
ACO 18 ACO_DATATE D 8 0 Data Final Fecha Final Final Date Data Final Fecha Final Final Date - m->ACO_DATATE>=M->ACO_DATDE x x x x x x x x x x x x x x x x - - 1 x x - - - S - - - - - - - - - - - - S - - N N N - - - 1 2 - - - 1960 0
ACO 19 ACO_GRPVEN C 6 0 Grp.Clientes Grp.Clientes Cust's Grp. Grupo de Clientes Grupo de Clientes Customers' Group @! Vazio() .Or. ExistCpo( "ACY" ) x x x x x x x x x x x x x x x x - ACY 1 xx - - - - - - - - - - - - - - - - S - - N N N - - - 1 2 - - - 1961 0
ACO 20 ACO_DESCPR L 1 0 Desc. Prox. Desc. Prox. Next Discoun Desc. Prox. Venda? ¿Desc. Prox. Venta? Next Sales Disc.? @! - x x x x x x x x x x x x x x x x .F. - 1 x - - - - - - - - - - - - - - - - S - - N N N - - - 1 2 - - - 1962 0
ACO 21 ACO_VLRDES N 11 2 Vlr. Descont Vlr. Descont Disc. Value Valor de desconto Valor de descuento Discount Value @E 99,999,999.99 - x x x x x x x x x x x x x x x x - - 1 xxxx x - S - - - - - - - - - - - - - - S - - N - N - - - 1 2 - - - 1963 0
ACO 22 ACO_MSBLQL C 1 0 Status Estatus Status Status do registro Estatus del registro Register Status @! Pertence("12") x x x x x x x x x x x x x x x x "2" - 1 x - - - - A R - - 1=Inativo;2=Ativo 1=Inactivo;2=Activo 1=Inactive;2=Active - - - - - S - - N - N - - - 1 2 - - - 1964 0

Índices da Tabela ACO (2 índices)

INDICE ORDEM CHAVE DESCRICAO DESCSPA DESCENG PROPRI F3 NICKNAME SHOWPESQ IX_VIRTUAL IX_VIRCUST D_E_L_E_T_ R_E_C_N_O_ R_E_C_D_E_L_
ACO 1 ACO_FILIAL+ACO_CODREG Cod. Regra Cod. Regla Rule Cd. S XXX - S 2 3 - 316 0
ACO 2 ACO_FILIAL+ACO_CODTAB+ACO_CONDPG+ACO_FORMPG+ACO_CODCLI+ACO_LOJA+ACO_CFAIXA Tabela Prec. + Cond.Pagto + Form.Pagto + Cliente + Loja + Faixa Tabla Precio + Condic.Pago + Forma Pago + Cliente + Tienda + Intervalo Pricelist + Paym.Cond + Payment Cond + Customer + Store + Range S DA0+SE4+XXX+SA1+XXX - S 2 3 - 317 0

Perguntas frequentes

Para que serve a tabela ACO no Protheus?

Ela é utilizada para regras de desconto dentro do sistema ERP Protheus.

Como consultar os campos da tabela ACO?

Nesta página você pode visualizar todos os campos, incluindo tipo, tamanho e validações.

O que são os índices da tabela ACO?

Os índices são estruturas que melhoram a performance de busca e acesso aos dados dentro do Protheus.

Exemplo de consulta SQL da tabela ACO

Modelo de query gerado automaticamente com base na estrutura da tabela.

SELECT
    ACO_FILIAL,
    ACO_CODREG,
    ACO_DESCRI,
    ACO_CODCLI,
    ACO_LOJA,
    ACO_NOME,
    ACO_CODTAB,
    ACO_CONDPG,
    ACO_FORMPG,
    ACO_FAIXA,
    ACO_MOEDA,
    ACO_PERDES,
    ACO_CFAIXA,
    ACO_TPHORA,
    ACO_HORADE,
    ACO_HORATE,
    ACO_DATDE,
    ACO_DATATE,
    ACO_GRPVEN,
    ACO_DESCPR,
    ACO_VLRDES,
    ACO_MSBLQL
FROM ACO
WHERE
    D_E_L_E_T_ = ' '
    AND ACO_FILIAL = 'VALOR'
    AND ACO_CODREG = 'VALOR'
    AND ACO_DESCRI = 'VALOR'
    AND ACO_CODCLI = 'VALOR'
    AND ACO_LOJA = 'VALOR'
    AND ACO_NOME = 'VALOR'
    AND ACO_CODTAB = 'VALOR'
    AND ACO_CONDPG = 'VALOR'
    AND ACO_FORMPG = 'VALOR'
    AND ACO_FAIXA = 0
    AND ACO_MOEDA = 0
    AND ACO_PERDES = 0
    AND ACO_CFAIXA = 'VALOR'
    AND ACO_TPHORA = 'VALOR'
    AND ACO_HORADE = 'VALOR'
    AND ACO_HORATE = 'VALOR'
    AND ACO_DATDE BETWEEN '20260501' AND '20260531'
    AND ACO_DATATE BETWEEN '20260501' AND '20260531'
    AND ACO_GRPVEN = 'VALOR'
    AND ACO_VLRDES = 0
    AND ACO_MSBLQL = 'VALOR'