Versão atual:

Uso addindex índice selecionado

Apesar de criado o índice 01 com a ordem UNIBOR+SALDO, a rotina não mantém os dados da tabela temporário ordenado. Qual será o problema?

aCampos:={}

AADD(aCampos,{"UNIBOR","C",06,0})
AADD(aCampos,{"SALDO ","N",14,2})

cAliasBrw := GetNextAlias()
oTempTable := FWTemporaryTable():New( cAliasBrw )

oTemptable:SetFields( aCampos)
oTempTable:AddIndex("01", {"UNIBOR"},{STR("SALDO")})
oTempTable:Create()

cAlUNI := oTempTable:GetAlias()

Leio a tabela SEA e gravo o conteúdo na tabela temporária criado acima.

While SEA->(!Eof()) .And. xFilial("SEA") == SEA->EA_FILIAL .And. SEA->EA_NUMBOR <= mv_par02
   RecLock((cAlUNI),.T.)
   (cAlUNI)->UNIBOR:=SEA->EA_NUMBOR
   (cAlUNI)->SALDO :=SE2->E2_SALDO-SE2->E2_SDDECRE
   MsUnLock()
   SEA->(dbSkip())
End

Quando leio a tabela temporária (cAlUNI), não mantem ordenado com o índice criado UNIBOR+SALDO.

(cAlUNI)->(dbGotop())

While (cAlUNI)->(!Eof())
   (cAlUNI)->(dbSkip( ))
End

Agradeço desde já.

Versões (2):

Ver a versão formatada

Uso addindex índice selecionado

Comentário

new question