Adicionando campos no cabeçalho.
Resultado
========================================
Adionando abas
Resultado
=================================
Adicionando outra lista no object pages
- Primeiro passo criar uma entidade da lista que vai ser criado, no meu caso os impostos de um item da NF
@AccessControl.authorizationCheck: #NOT_REQUIRED
@EndUserText.label: 'Impostos '
define root view entity ZI_Impostos
as select from I_BR_NFTax
{
key BR_NotaFiscal as Docnum,
key BR_NotaFiscalItem as Itmnum,
key BR_TaxType as Taxtype,
key TaxGroup as TaxGrp,
@Semantics.amount.currencyCode: 'Currency'
BR_NFItemBaseAmount as Base,
BR_NFItemTaxRate as Rate,
@Semantics.amount.currencyCode: 'Currency'
BR_NFItemTaxAmount as TaxValue,
BR_NFItemExcludedBaseAmount as ExcBase,
@Semantics.amount.currencyCode: 'Currency'
BR_NFItemOtherBaseAmount as OthBas,
SalesDocumentCurrency as Currency
}
Criei uma projection view tbm mas não sei se é necessário
@EndUserText.label: 'Impostos da Nota Fiscal Importação (Projection)'
@AccessControl.authorizationCheck: #NOT_REQUIRED
@Metadata.allowExtensions: true
define root view entity ZC_Impostos
provider contract transactional_query
as projection on ZI_Impostos
{
key Docnum,
key Itmnum,
key Taxtype,
key TaxGrp,
Base,
Rate,
TaxValue,
ExcBase,
OthBas,
Currency
}
Criei um METADATA
@Metadata.layer: #CORE
annotate entity ZC_Impostos with
{
@UI:{ lineItem: [{ position: 10 }] }
@EndUserText.label: 'Tipo Imposto'
Taxtype;
@UI:{ lineItem: [{ position: 20 }] }
@EndUserText.label: 'Grupo Imposto'
TaxGrp;
@UI:{ lineItem: [{ position: 30 }] }
@EndUserText.label: 'Base'
Base;
@UI:{ lineItem: [{ position: 40 }] }
@EndUserText.label: 'Taxa'
Rate;
@UI:{ lineItem: [{ position: 50 }] }
@EndUserText.label: 'Valor Imposto'
TaxValue;
@UI:{ lineItem: [{ position: 60 }] }
@EndUserText.label: 'Base excluída'
ExcBase;
@UI:{ lineItem: [{ position: 70 }] }
@EndUserText.label: 'Outras Bases'
OthBas;
@UI:{ lineItem: [{ position: 80 }] }
@EndUserText.label: 'Moeda'
Currency;
}
Fiz a associação a minha projection principal
@EndUserText.label: 'Dados gestão importação (projection)'
@AccessControl.authorizationCheck: #NOT_REQUIRED
@Metadata.allowExtensions: true
define root view entity ZC_DadosGestaoImportacao
provider contract transactional_query
as projection on ZI_DadosGestaoImportacao
association [0..*] to ZC_Impostos as _ImpList on $projection.docnum = _ImpList.Docnum
and $projection.itmnum = _ImpList.Itmnum
{
key zuonr,
key belnr,
key gjahr,
key buzei,
bldat,
budat,
usnam,
xblnr,
bukrs,
--@ObjectModel.foreignKey.association: '_Lfa1'
@ObjectModel.text.element: ['NomeFornecedor']
lifnr,
waers,
_ImpList
No METADATA principal criei o facet para associação
-- TAB dados Impostos
{
id: 'Impostos',
purpose: #STANDARD,
type: #LINEITEM_REFERENCE,
label: 'Impostos',
position: 50,
targetElement: '_ImpList'
}
]
@EndUserText.label: 'Dados de Gestao de importação'
define service ZSD_DadosGestaoImportacao {
expose ZC_DadosGestaoImportacao;
expose ZC_Impostos;
}
Resultado
Nenhum comentário:
Postar um comentário