Fwmarkbrowse advpl dicionário no banco

como modificar FWmarkBrose para dionario no banco

//Indices aAdd(aSeek,{"Pedido" ,{{"","C",050,0,"Pedido" ,"@!"}} } ) aAdd(aSeek,{"Cliente" ,{{"","C",006,0,"Cliente" ,"@!"}} } ) aAdd(aSeek,{"Nome" ,{{"","C",100,0,"Nome" ,"" }} } ) aAdd(aSeek,{"Cli.Externo" ,{{"","C",015,0,"Cli.Externo" ,"" }} } ) aAdd(aSeek,{"Grp.Externo" ,{{"","C",015,0,"Grp.Externo" ,"" }} } ) aAdd(aSeek,{"Ped.Externo" ,{{"","C",020,0,"Ped.Externo" ,"" }} } )

//Filtros Aadd(aFieFilter,{"C5_NUM" , "Pedido" , "C",006, 0,"@!"}) Aadd(aFieFilter,{"C5_CLIENTE" , "Cliente" , "C",014, 0,"@!"}) Aadd(aFieFilter,{"A1_NOME" , "Nome" , "C",040, 0,"@!"}) Aadd(aFieFilter,{"A1_XCODEXT" , "Cli.Externo" , "C",040, 0,"@!"}) Aadd(aFieFilter,{"A1_XGRPEXT" , "Grp.Externo" , "C",040, 0,"@!"}) Aadd(aFieFilter,{"C5_XCODEXT" , "Ped.Externo" , "C",020, 0,"@!"})

Olá Eduardo, segue exemplo com a SC5, estou utilizando o menu do MATA410, mas se adiciona uma menudef no seu fonte e altera pra buscar nele.


/*/{Protheus.doc} User Function MarkPV
    (Gera FWMarkBrowse de acordo com o dicionario)
    @type  Function
    @author Leandro Lemos
    @since 20/09/2023
    @version P12
    @param param_name, param_type, param_descr
    @return return_var, return_type, return_description
    @example
    (examples)
    @see (links_or_references)
    /*/
User Function MarkPV()
    Private oDlgMark             
    Private oBrowse   := Nil
    Private cCadastro    := OemToAnsi("FwmarkBrowse com dicionario")
    Private aRotina     := FWLoadMenuDef("MATA410")

    oBrowse:= FWMarkBrowse():New()
    oBrowse:SetDescription(cCadastro)
    oBrowse:SetAlias("SC5")
    //oBrowse:SetMenuDef("MarkPV")
    oBrowse:SetFieldMark("C5_OK")
    oBrowse:SetFilterDefault("C5_EMISSAO >= '20230101'") 
    oBrowse:SetOwner(oDlgMark)    
    oBrowse:SetWalkThru(.F.)
    oBrowse:SetAmbiente(.F.)
    oBrowse:AddLegend("Empty(C5_LIBEROK).And.Empty(C5_NOTA) .And. Empty(C5_BLQ)","ENABLE"         ,"Pedido Aberto")
    oBrowse:AddLegend("!Empty(C5_NOTA).Or.C5_LIBEROK=='E' .And. Empty(C5_BLQ)"    ,"DISABLE"        ,"Pedido Encerrado")
    oBrowse:AddLegend("!Empty(C5_LIBEROK).And.Empty(C5_NOTA).And. Empty(C5_BLQ)","BR_AMARELO"    ,"Pedido Liberado")
    oBrowse:AddLegend("C5_BLQ == '1'"                                                                 ,"BR_AZUL"        ,"Pedido Bloquedo por regra")
    oBrowse:AddLegend("C5_BLQ == '2'"                                                                 ,"BR_LARANJA" ,"Pedido Bloquedo por verba")
    oBrowse:AddLegend("AllTrim(C5_NOTA)=='REMITO'"                                                     ,"BR_CINZA"        ,"Remito")    
    oBrowse:Activate()

Return