Alexandre, grato pela atenção...
O q gostaria q testasse é criar a partir dessa tabela um indice temporario via LETO e ver se mostra correto em um BROWSE.
No ultimo teste a quase 1 ano atrás eu tinha tido um erro, mas não lembro como fiz, como não usei/testei mais o LETO não recordo totalmente os detalhes.
Código: Selecionar todos
/*
* Estrutura clientes.dbf
*/
LOCAL aField[101]
aField[001] := {"CODIGO" , "C", 8, 0}
aField[002] := {"NOME" , "C", 60, 0}
aField[003] := {"ENDERECO" , "C", 60, 0}
aField[004] := {"BAIRRO" , "C", 25, 0}
aField[005] := {"CIDADE" , "C", 25, 0}
aField[006] := {"ESTADO" , "C", 2, 0}
aField[007] := {"PONTOREF" , "C", 25, 0}
aField[008] := {"NASCIMENTO", "D", 8, 0}
aField[009] := {"CEP" , "C", 9, 0}
aField[010] := {"TELEFONE" , "C", 14, 0}
aField[011] := {"LOJA" , "C", 3, 0}
aField[012] := {"TOLERANCIA", "N", 3, 0}
aField[013] := {"BLOQUEIO" , "N", 3, 0}
aField[014] := {"JUROS" , "N", 3, 0}
aField[015] := {"DESCONTO" , "N", 6, 2}
aField[016] := {"DESCONTO2" , "N", 6, 2}
aField[017] := {"RG" , "C", 35, 0}
aField[018] := {"INSCRICAO" , "C", 16, 0}
aField[019] := {"CPF" , "C", 11, 0}
aField[020] := {"CNPJ" , "C", 15, 0}
aField[021] := {"EXTERNO" , "C", 6, 0}
aField[022] := {"TEMCASA" , "C", 1, 0}
aField[023] := {"TRABALHO" , "C", 25, 0}
aField[024] := {"CARGO" , "C", 17, 0}
aField[025] := {"SALARIO" , "N", 9, 2}
aField[026] := {"FONECOM" , "C", 14, 0}
aField[027] := {"FILIACAO" , "C", 60, 0}
aField[028] := {"CONJUGE" , "C", 35, 0}
aField[029] := {"NASCCONJ" , "D", 8, 0}
aField[030] := {"RGCONJ" , "C", 15, 0}
aField[031] := {"CPFCONJ" , "C", 16, 0}
aField[032] := {"TRABCONJ" , "C", 20, 0}
aField[033] := {"GANHOCONJ" , "N", 9, 2}
aField[034] := {"CARGOCONJ" , "C", 21, 0}
aField[035] := {"FONECONJ" , "C", 14, 0}
aField[036] := {"LIMITE" , "N", 9, 2}
aField[037] := {"CREDITO" , "N", 12, 2}
aField[038] := {"CADASTRO" , "D", 8, 0}
aField[039] := {"OBSERVACAO", "C", 70, 0}
aField[040] := {"BLOQUEADO" , "C", 1, 0}
aField[041] := {"AUTORIZA1" , "C", 30, 0}
aField[042] := {"AUTORIZA2" , "C", 30, 0}
aField[043] := {"AUTORIZA3" , "C", 30, 0}
aField[044] := {"AUTORIZA4" , "C", 30, 0}
aField[045] := {"DTULTCOMP" , "D", 8, 0}
aField[046] := {"VLULTCOMP" , "N", 12, 2}
aField[047] := {"BANCO" , "C", 3, 0}
aField[048] := {"AGENCIA" , "C", 10, 0}
aField[049] := {"CONTA" , "C", 14, 0}
aField[050] := {"APOSENTADO", "C", 1, 0}
aField[051] := {"REFERENCIA", "C", 30, 0}
aField[052] := {"VENDECRED" , "C", 1, 0}
aField[053] := {"MES_ANO" , "C", 4, 0}
aField[054] := {"TIPO" , "C", 1, 0}
aField[055] := {"DIACOBRA" , "C", 2, 0}
aField[056] := {"SITUACAO" , "C", 2, 0}
aField[057] := {"MALADIRETA", "C", 1, 0}
aField[058] := {"DTCADASTRO", "D", 8, 0}
aField[059] := {"SENHA" , "C", 5, 0}
aField[060] := {"FANTASIA" , "C", 30, 0}
aField[061] := {"EMAIL" , "C", 50, 0}
aField[062] := {"HOME" , "C", 35, 0}
aField[063] := {"PRODUTOR" , "C", 16, 0}
aField[064] := {"REFCOM1" , "C", 60, 0}
aField[065] := {"REFCOM2" , "C", 60, 0}
aField[066] := {"REFCOM3" , "C", 60, 0}
aField[067] := {"VALEDESC" , "C", 1, 0}
aField[068] := {"PROMOCAO" , "C", 1, 0}
aField[069] := {"NATURALID" , "C", 25, 0}
aField[070] := {"CODMUN" , "C", 7, 0}
aField[071] := {"DTULTATU" , "D", 8, 0}
aField[072] := {"NUMEROEND" , "C", 8, 0}
aField[073] := {"MAXVLRPARC", "N", 12, 3}
aField[074] := {"NRCALCADO" , "C", 2, 0}
aField[075] := {"NRCALCCONJ", "C", 2, 0}
aField[076] := {"CATEGORIA" , "C", 5, 0}
aField[077] := {"GRUPO" , "C", 5, 0}
aField[078] := {"SUBGRUPO" , "C", 5, 0}
aField[079] := {"ORGAOEXP" , "C", 2, 0}
aField[080] := {"CARTTRAB" , "C", 20, 0}
aField[081] := {"AVALISTA1" , "C", 20, 0}
aField[082] := {"DTULTSERV" , "D", 8, 0}
aField[083] := {"VLULTSERV" , "N", 12, 2}
aField[084] := {"CELULAR" , "C", 14, 0}
aField[085] := {"TEMPOSERV" , "C", 20, 0}
aField[086] := {"QUEMCADALT", "C", 20, 0}
aField[087] := {"AUT1_CPF" , "C", 11, 0}
aField[088] := {"AUT1_RG" , "C", 21, 0}
aField[089] := {"AUT1_NASC" , "D", 8, 0}
aField[090] := {"AUT2_CPF" , "C", 11, 0}
aField[091] := {"AUT2_RG" , "C", 21, 0}
aField[092] := {"AUT2_NASC" , "D", 8, 0}
aField[093] := {"AUT3_CPF" , "C", 11, 0}
aField[094] := {"AUT3_RG" , "C", 21, 0}
aField[095] := {"AUT3_NASC" , "D", 8, 0}
aField[096] := {"AUT4_CPF" , "C", 11, 0}
aField[097] := {"AUT4_RG" , "C", 21, 0}
aField[098] := {"AUT4_NASC" , "D", 8, 0}
aField[099] := {"LATITUDE" , "N", 14, 8}
aField[100] := {"LONGITUDE" , "N", 14, 8}
aField[101] := {"NET_ID" , "C", 20, 0}
// Array onde tem as chaves q uso para os indices:
#define ch_Files_03 {{ .f., 'clientes', 'clientes', 'codigo', .t.,'clientes1' },;
{ .f., 'clientes', 'clientes', 'nome', .f.,'clientes2' },;
{ .f., 'clientes', 'clientes', 'cpf', .f.,'clientes3' },;
{ .f., 'clientes', 'clientes', 'cnpj', .f.,'clientes4' },;
{ .f., 'clientes', 'clientes', 'STRZERO(Val(CharOnly("0123456789", Telefone)), LEN(Telefone))', .F.,'clientes5' },;
{ .f., 'clientes', 'clientes', 'padr(CharOnly("0123456789", Telefone), LEN(Telefone))', .f.,'clientes6' },;
{ .f., 'clientes', 'clientes', 'fantasia', .f.,'clientes7' },;
{ .f., 'clientes', 'clientes', 'dtos(DtUltComp)', .f.,'clientes8' },;
{ .f., 'clientes', 'clientes', 'dtos(DtCadastro)', .f.,'clientes9' },;
Era algo assim (fiz de cabeça, da uma revisada ai por favor se não escrevi nada errado... Kkkk):