Regras de Desconto
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.
| 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 |
| 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 |
| 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 |
Ela é utilizada para regras de desconto dentro do sistema ERP Protheus.
Nesta página você pode visualizar todos os campos, incluindo tipo, tamanho e validações.
Os índices são estruturas que melhoram a performance de busca e acesso aos dados dentro do Protheus.
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'