Muitas vezes, quando vamos criar uma MBrowse com arquivos temporário, gera erros, isso ocorre porque a recomendação é que ao criar um alias temporário para ser utilizado em mBrowse, Markbrow e outros browsers, devemos criar com estrutura, conforme o exemplo abaixo:
User Function mbrowtra()
SetPrvt("CCADASTRO,AROTINA,CDELFUNC,ACAMPOS,_STRU")
SetPrvt("_NVAR,_CARQ,_CINDEX,_CCHAVE,")
cCadastro := "Cadastro Especifico"
ACAMPOS:={}
PRIVATE aRotina := { { "Pesquisar" , "AxPesqui" , 0, 1 },;
{ "Visualizar" , "axVisual" , 0, 2 },;
{ "Incluir" , "axInclui" , 0, 3 },;
{ "Alterar" , "axAltera" , 0, 4 }}//,;
//{ "Excluir" , "axExclui" , 0, 5 } }
cdelfunc:=".T."
_stru:={}
AADD(_stru,{"RB_FIL","C",2,0})
AADD(_stru,{"RB_VAR","C",10,0})
AADD(_stru,{"RB_DESCRIC","C",50,0})
AADD(_stru,{"RB_VALOR","N",14,2})
AADD(_stru,{"RB_OK","C",2,0})
_nvar:=1
_cArq:=Criatrab(_stru,.T.)
DBUSEAREA(.t.,,_carq,"TRB")
DBSELECTAREA("SX6")
DBGOTOP()
WHILE !EOF()
DBSELECTAREA("TRB")
RECLOCK("TRB",.T.)
TRB->RB_FIL:=SX6->X6_FIL
TRB->RB_VAR:=SX6->X6_VAR
TRB->RB_DESCRIC:=SX6->X6_DESCRIC
TRB->RB_valor :=_nvar
MSUNLOCK()
_nvar:=_nvar+0.11
DBSELECTAREA("SX6")
DBSKIP()
ENDDO
_cIndex:=Criatrab(Nil,.F.)
_cChave:="RB_FIL+RB_VAR"
Indregua("TRB",_cIndex,_cchave,,,"Selecionando Registros...")
dBSETINDEX(_cIndex+ordbagext())
aCampos:={{"Filial " ,"RB_FIL" ,"C",2,0 ,"@!"},;
{"Valor " ,"RB_VALOR" ,"N",14,2,"@E 999,999,999.99"},;
{"Parametro","RB_VAR" ,"C",10,0,"@!"},;
{"Descricao","RB_DESCRIC" ,"C",50,0,"@!"}}
mBrowse( 6,1,22,75,"TRB",acampos)
DBCLOSEAREA("TRB")
FERASE(_carq+".DBF")
FERASE(_cindex+ordbagext())
Return
Boa dica, ajudou. valeu
ResponderExcluir