Perguntas Funcao FWMarkBrowse
- Wanderson
- Autor do Tópico
- Desconectado
- Membro Júnior
Menos
Mais
- Postagens: 39
- Obrigados Recebidos: 0
4 anos 7 meses atrás #32832
por Wanderson
Funcao FWMarkBrowse foi criado por Wanderson
Boa Tarde Pessoal,
Estou com problemas na funcao FWMarkBrowse, primeira vez que estou usando e já estou levando uma surra, no markbrowse tenho 5 notas filtrada e marco apenas 2 quando peço para executar a rotina le todo o markbrowse ve que tem 2 notas marcadas porem atualiza somente uma.
Estou enviando o fonte se alguém puder me ajudar agradeço
#INCLUDE 'totvs.ch'
#Include "TOPCONN.CH"
//
/*/{Protheus.doc} VSPFATOC
Monta uma MarkBrowse para selecionar as Notas Fiscais que serão
amarradas com o codigo do Veiculo
tabela em MVC
@author
@since 07/04/2020
@version P12.25
/*/
User Function VSPFATOC()
//Local cPerg:= Padr("VSPFATOC",10)
Private cPerg := "VSPFATOC"
Pergunte(cPerg,.T.)
Private oMark
Private aRotina := MenuDef()
PRIVATE lInverte := .f.
PRIVATE aMarked := {}
oMark:= FWMarkBrowse():NEW() // Cria o objeto oMark - MarkBrowse
oMark:SetAlias("SF2") // Define a tabela do MarkBrowse
oMark:SetDescription('Notas Fiscais para Serem Vinculadas')
oMark:SetFieldMark("F2_ZZOK") // Define o campo utilizado para a marcacao
oMark:SetSemaphore(.T.) // Define se utiliza marcacao exclusiva
//oMark:DisableDetails() // Desabilita a exibicao dos detalhes do Browse
oMark:AddLegend( "Empty(F2_VEICUL1)", "YELLOW", "Não Vinculado" )
oMark:AddLegend( "!EMPTY(F2_VEICUL1)", "BLUE" , "Nota Finculada" )
oMark:setFilterDefault( "F2_DOC >='"+MV_PAR02+"' .AND. F2_DOC <='" + MV_PAR03 +"' .AND. F2_FILIAL='" + MV_PAR01 +"'")// .AND. F2_SERIE='1'" )//+ MV_PAR04 + "'")
oMark:Activate()
Return NIL
//
Static Function MenuDef()
Local aRotina := {}
// ADD OPTION aRotina TITLE 'Visualizar' ACTION 'VIEWDEF.COMP025_MVC' OPERATION 2 ACCESS 0
ADD OPTION aRotina TITLE 'Vincular' ACTION 'U_COMP25PROC()' OPERATION 2 ACCESS 0
Return aRotina
//
Static Function ModelDef()
// Utilizo um model que ja existe
Return FWLoadModel( 'COMP011_MVC' )
//
Static Function ViewDef()
// Utilizo uma View que ja existe
Return FWLoadView( 'COMP011_MVC' )
//
User Function COMP25PROC()
Local aArea := GetArea()
Local cMarca := oMark:Mark()
Local lInverte := oMark:IsInvert()
Local nCt := 0
cQuery := " SELECT "
cQuery += " SF2.F2_VEICUL1"
cQuery += " ,SF2.F2_DOC"
cQuery += " FROM"
cQuery += RetSqlTab("SF2")
cQuery += " WHERE 1=1 "
cQuery += " AND "+RetSqlFil("SF2")
cQuery += " AND " + RetSqlDel("SF2") + CRLF
cQuery += " AND SF2.F2_DOC >='" + MV_PAR02 + "'"
cQuery += " AND SF2.F2_DOC <='" + MV_PAR03 + "'"
//cQuery += " AND SF2.F2_SERIE ='" + MV_PAR04 + "'"
//cQuery += " AND SF2.F2_VEICUL1=' ' "
cQuery := ChangeQuery(cQuery)
TCQuery cQuery New Alias "TMPSF2"
Count To nRecCount
IF nRecCount == 0
MsgInfo("Não foram encontrados registros.")
Return Nil
EndIF
cNotaMrc:=TMPSF2->F2_DOC
TMPSF2->( dbGoTop() )
While !TMPSF2->( EOF() )
If oMark:IsMark(cMarca)
nCt++
Reclock("SF2",.F.)
SF2->F2_VEICUL1 := MV_PAR04
MsUnLock()
EndIf
TMPSF2->( dbSkip() )
cNotaMrc:=TMPSF2->F2_DOC
ENDDO
TMPSF2->(dbCloseArea())
RestArea( aArea )
Return NIL
Estou com problemas na funcao FWMarkBrowse, primeira vez que estou usando e já estou levando uma surra, no markbrowse tenho 5 notas filtrada e marco apenas 2 quando peço para executar a rotina le todo o markbrowse ve que tem 2 notas marcadas porem atualiza somente uma.
Estou enviando o fonte se alguém puder me ajudar agradeço
#INCLUDE 'totvs.ch'
#Include "TOPCONN.CH"
//
/*/{Protheus.doc} VSPFATOC
Monta uma MarkBrowse para selecionar as Notas Fiscais que serão
amarradas com o codigo do Veiculo
tabela em MVC
@author
@since 07/04/2020
@version P12.25
/*/
User Function VSPFATOC()
//Local cPerg:= Padr("VSPFATOC",10)
Private cPerg := "VSPFATOC"
Pergunte(cPerg,.T.)
Private oMark
Private aRotina := MenuDef()
PRIVATE lInverte := .f.
PRIVATE aMarked := {}
oMark:= FWMarkBrowse():NEW() // Cria o objeto oMark - MarkBrowse
oMark:SetAlias("SF2") // Define a tabela do MarkBrowse
oMark:SetDescription('Notas Fiscais para Serem Vinculadas')
oMark:SetFieldMark("F2_ZZOK") // Define o campo utilizado para a marcacao
oMark:SetSemaphore(.T.) // Define se utiliza marcacao exclusiva
//oMark:DisableDetails() // Desabilita a exibicao dos detalhes do Browse
oMark:AddLegend( "Empty(F2_VEICUL1)", "YELLOW", "Não Vinculado" )
oMark:AddLegend( "!EMPTY(F2_VEICUL1)", "BLUE" , "Nota Finculada" )
oMark:setFilterDefault( "F2_DOC >='"+MV_PAR02+"' .AND. F2_DOC <='" + MV_PAR03 +"' .AND. F2_FILIAL='" + MV_PAR01 +"'")// .AND. F2_SERIE='1'" )//+ MV_PAR04 + "'")
oMark:Activate()
Return NIL
//
Static Function MenuDef()
Local aRotina := {}
// ADD OPTION aRotina TITLE 'Visualizar' ACTION 'VIEWDEF.COMP025_MVC' OPERATION 2 ACCESS 0
ADD OPTION aRotina TITLE 'Vincular' ACTION 'U_COMP25PROC()' OPERATION 2 ACCESS 0
Return aRotina
//
Static Function ModelDef()
// Utilizo um model que ja existe
Return FWLoadModel( 'COMP011_MVC' )
//
Static Function ViewDef()
// Utilizo uma View que ja existe
Return FWLoadView( 'COMP011_MVC' )
//
User Function COMP25PROC()
Local aArea := GetArea()
Local cMarca := oMark:Mark()
Local lInverte := oMark:IsInvert()
Local nCt := 0
cQuery := " SELECT "
cQuery += " SF2.F2_VEICUL1"
cQuery += " ,SF2.F2_DOC"
cQuery += " FROM"
cQuery += RetSqlTab("SF2")
cQuery += " WHERE 1=1 "
cQuery += " AND "+RetSqlFil("SF2")
cQuery += " AND " + RetSqlDel("SF2") + CRLF
cQuery += " AND SF2.F2_DOC >='" + MV_PAR02 + "'"
cQuery += " AND SF2.F2_DOC <='" + MV_PAR03 + "'"
//cQuery += " AND SF2.F2_SERIE ='" + MV_PAR04 + "'"
//cQuery += " AND SF2.F2_VEICUL1=' ' "
cQuery := ChangeQuery(cQuery)
TCQuery cQuery New Alias "TMPSF2"
Count To nRecCount
IF nRecCount == 0
MsgInfo("Não foram encontrados registros.")
Return Nil
EndIF
cNotaMrc:=TMPSF2->F2_DOC
TMPSF2->( dbGoTop() )
While !TMPSF2->( EOF() )
If oMark:IsMark(cMarca)
nCt++
Reclock("SF2",.F.)
SF2->F2_VEICUL1 := MV_PAR04
MsUnLock()
EndIf
TMPSF2->( dbSkip() )
cNotaMrc:=TMPSF2->F2_DOC
ENDDO
TMPSF2->(dbCloseArea())
RestArea( aArea )
Return NIL
Por favor Acessar ou Registrar para participar da conversa.
Tempo para a criação da página:0.110 segundos