×
Linguagem de Programação ADVPL
Perguntas Dúvida Layout
- henry.charriere
- Autor do Tópico
- Desconectado
- Membro Platina
Menos
Mais
- Postagens: 492
- Obrigados Recebidos: 0
11 anos 4 meses atrás #15087
por henry.charriere
Dúvida Layout foi criado por henry.charriere
Pessoal, bom dia! Tenho esse layout aqui, que está funcionando perfeito. Só tenho uma dúvida, se quizer selecionar tudo, o o conteúdo retorno como devo fazer?
Static Function TelaRegEstra()
Local _stru:={}
Local aCpoBro := {}
Local oDlgLocal
Private lInverte3 := .F.
//Private cMark := GetMark()
Private cMark3
Private oMark3
private cAlias3 := GetNextAlias()
//Cria um arquivo de Apoio
AADD(_stru,{"OK" ,"C" ,2 ,0 })
AADD(_stru,{"COD" ,"C" ,3 ,0 })
AADD(_stru,{"Descricao" ,"C" ,30 ,0 })
cArq3:=Criatrab(_stru,.T.)
DBUSEAREA(.t.,,carq3,cAlias3)
//Alimenta o arquivo de apoio com os registros do cadastro de clientes (SA3)
dbSelectArea("SX5")
SX5->(dbSeek(xFilial("SX5")+"A2"))
While SX5->(X5_FILIAL+X5_TABELA)==xFilial("SX5")+"A2"
DbSelectArea(cAlias3)
RecLock(cAlias3,.T.)
(cAlias3)->COD := SX5->X5_CHAVE
(cAlias3)->Descricao := SX5->X5_DESCRI
MsunLock()
SX5->(dbSkip())
Enddo
//Define quais colunas (campos da TTRB) serao exibidas na MsSelect
aCpoBro := {{ "OK" ,, "Mark" ,"@!"},;
{ "COD" ,, "UF" ,"@!"},;
{ "Descricao" ,, "Descricao" ,"@!"}}
//Cria uma Dialog
DEFINE MSDIALOG oDlgRE TITLE "Região Estratégica" From 9,0 To 315,800 PIXEL
DbSelectArea(cAlias3)
DbGotop()
//Cria a MsSelect
oMark := MsSelect():New(cAlias3,"OK","",aCpoBro,@lInverte3,@cMark3,{17,1,150,400},,,,,)
//oMark:bMark := {| | Disp()}
//Exibe a Dialog
ACTIVATE MSDIALOG oDlgRE CENTERED ON INIT EnchoiceBar(oDlgRE,{|| GetRE(oDlgRE)},{|| oDlgRE:End()})
//Fecha a Area e elimina os arquivos de apoio criados em disco.
(cAlias3)->(DbCloseArea())
Iif(File(cArq3 + GetDBExtension()),FErase(cArq3 + GetDBExtension()) ,Nil)
Return
Static Function GetRE(oDlgRE)
Local re:= ""
oDlgRE:End()
DbSelectArea(cAlias3)
DbGotop()
While (cAlias3)->(!EOF())
If(!Empty((cAlias3)->OK))
re += ALLTRIM((cAlias3)->COD)+ ','
EndIf
(cAlias3)->(dbSkip())
EndDo
re := substr(re,1, len(re) -1)
cGet8 := re
Return
Static Function TelaRegEstra()
Local _stru:={}
Local aCpoBro := {}
Local oDlgLocal
Private lInverte3 := .F.
//Private cMark := GetMark()
Private cMark3
Private oMark3
private cAlias3 := GetNextAlias()
//Cria um arquivo de Apoio
AADD(_stru,{"OK" ,"C" ,2 ,0 })
AADD(_stru,{"COD" ,"C" ,3 ,0 })
AADD(_stru,{"Descricao" ,"C" ,30 ,0 })
cArq3:=Criatrab(_stru,.T.)
DBUSEAREA(.t.,,carq3,cAlias3)
//Alimenta o arquivo de apoio com os registros do cadastro de clientes (SA3)
dbSelectArea("SX5")
SX5->(dbSeek(xFilial("SX5")+"A2"))
While SX5->(X5_FILIAL+X5_TABELA)==xFilial("SX5")+"A2"
DbSelectArea(cAlias3)
RecLock(cAlias3,.T.)
(cAlias3)->COD := SX5->X5_CHAVE
(cAlias3)->Descricao := SX5->X5_DESCRI
MsunLock()
SX5->(dbSkip())
Enddo
//Define quais colunas (campos da TTRB) serao exibidas na MsSelect
aCpoBro := {{ "OK" ,, "Mark" ,"@!"},;
{ "COD" ,, "UF" ,"@!"},;
{ "Descricao" ,, "Descricao" ,"@!"}}
//Cria uma Dialog
DEFINE MSDIALOG oDlgRE TITLE "Região Estratégica" From 9,0 To 315,800 PIXEL
DbSelectArea(cAlias3)
DbGotop()
//Cria a MsSelect
oMark := MsSelect():New(cAlias3,"OK","",aCpoBro,@lInverte3,@cMark3,{17,1,150,400},,,,,)
//oMark:bMark := {| | Disp()}
//Exibe a Dialog
ACTIVATE MSDIALOG oDlgRE CENTERED ON INIT EnchoiceBar(oDlgRE,{|| GetRE(oDlgRE)},{|| oDlgRE:End()})
//Fecha a Area e elimina os arquivos de apoio criados em disco.
(cAlias3)->(DbCloseArea())
Iif(File(cArq3 + GetDBExtension()),FErase(cArq3 + GetDBExtension()) ,Nil)
Return
Static Function GetRE(oDlgRE)
Local re:= ""
oDlgRE:End()
DbSelectArea(cAlias3)
DbGotop()
While (cAlias3)->(!EOF())
If(!Empty((cAlias3)->OK))
re += ALLTRIM((cAlias3)->COD)+ ','
EndIf
(cAlias3)->(dbSkip())
EndDo
re := substr(re,1, len(re) -1)
cGet8 := re
Return
Por favor Acessar ou Registrar para participar da conversa.
Tempo para a criação da página:0.091 segundos