xHarbour 100% Orientado a Objetos - Uma pequena introdução

Projeto [x]Harbour - Compilador de código aberto compatível com o Clipper.

Moderador: Moderadores

alxsts
Colaborador
Colaborador
Mensagens: 3092
Registrado em: 12 Ago 2008 15:50
Localização: São Paulo-SP-Brasil

xHarbour 100% Orientado a Objetos - Uma pequena introdução

Mensagem por alxsts »

Olá!

Obrigado Stanis.

Escrevi em uma máquina onde não há Clipper instalado e não testei.

Faltaram duas chaves. O correto seria:

Código: Selecionar todos

AAdd( aArray, { { "Codigo", "N", 3, 0 }, { "Nome", "C", 50, 0 } } )
Desculpem o inconveniente.
[]´s
Alexandre Santos (AlxSts)
Stanis Luksys
Colaborador
Colaborador
Mensagens: 1329
Registrado em: 18 Jun 2005 03:04
Localização: São Paulo
Contato:

xHarbour 100% Orientado a Objetos - Uma pequena introdução

Mensagem por Stanis Luksys »

alxsts escreveu:AAdd( aArray, { { "Codigo", "N", 3, 0 }, { "Nome", "C", 50, 0 } } )
Não testei, mas isso não funcionará, a função DbCreate() deve receber a matriz de um campo em cada 'linha' do array. Cada array com a declaração de um campo deve ser um elemento da matriz principal.

Não daria certo colocar em um único elemento, vários campos. Desta forma que você colocou, o tamanho de aArray será 1, quando o correto seria 2.

Teste com Len(aArray).

Abraços.
Stanis Luksys
sites.google.com/hblibs

Apoiar e se utilizar de projetos opensource não é uma questão de boicote, mas sim de liberdade.
Utilize, aprimore e distribua.
Avatar do usuário
bencz
Usuário Nível 4
Usuário Nível 4
Mensagens: 524
Registrado em: 28 Abr 2012 17:36
Contato:

xHarbour 100% Orientado a Objetos - Uma pequena introdução

Mensagem por bencz »

Bom dia....
testei o código... e nao funcionou... quando tento adicionar um "cliente"... recebo o seguinte erro...

Imagem
Imagem
alxsts
Colaborador
Colaborador
Mensagens: 3092
Registrado em: 12 Ago 2008 15:50
Localização: São Paulo-SP-Brasil

xHarbour 100% Orientado a Objetos - Uma pequena introdução

Mensagem por alxsts »

Olá!

Realmente ainda estava com o bug mencionado. Segue o código correto para futuros utilizadores:

Código: Selecionar todos

Function Main()

LOCAL aArray, nInd, nLen

   CLS

   aArray := { { "Codigo", "C", 5, 0 }, { "Nome", "C", 50, 0 } }
 
   DbCreate( "Clientes", aArray )   // ou simplesmente   DbCreate( "Clientes", { { "Codigo", "N", 3, 0 }, { "Nome", "C", 50, 0 } } ) 

   ? "Tabela 'Clientes' criada"

   aArray := {}

   AAdd( aArray, { "1", "VARIG" } )
   AAdd( aArray, { "2", "VASP" } )
   AAdd( aArray, { "3", "TRANSBRASIL" } )
   AAdd( aArray, { "4", "CRUZEIRO DO SUL" } )
   AAdd( aArray, { "5", "PANAM" } )
   AAdd( aArray, { "6", "BRANIFF" } )

   USE Clientes EXCLUSIVE NEW

   nLen := Len( aArray )

   FOR nInd := 1 TO nLen
      Clientes->( DbAppend() )
      Clientes->codigo := aArray[ nInd, 1 ]
      Clientes->nome := aArray[ nInd, 2 ]
   NEXT

   Clientes->( DbCloseArea() )

   ? "6 registros incluidos."
   ? "Fim de processamento. Tecle algo:"
   Inkey(10)  
    
   RETURN NIL
Stanis Luksys escreveu:Note que no exemplo original, o código é tipo caracter, tamanho 5, e não numérico como foi colocado agora
Bencz:
quanto ao erro que você está recebendo, certamente tem a ver com o comentário do Stanis, reproduzido acima. Delete a tabela Clientes que você tem e recrie usando o código que acabo de postar (compile e linkedite este código).
[]´s
Alexandre Santos (AlxSts)
Avatar do usuário
bencz
Usuário Nível 4
Usuário Nível 4
Mensagens: 524
Registrado em: 28 Abr 2012 17:36
Contato:

xHarbour 100% Orientado a Objetos - Uma pequena introdução

Mensagem por bencz »

blz, como q se faz a exclusão do item na tabela DBF ?? ( nao é nem mais duvida sobre a programação OO, e sim, sobre o arquivo DBF mesmo xD )
Imagem
alxsts
Colaborador
Colaborador
Mensagens: 3092
Registrado em: 12 Ago 2008 15:50
Localização: São Paulo-SP-Brasil

xHarbour 100% Orientado a Objetos - Uma pequena introdução

Mensagem por alxsts »

Olá!

Não sei se entendi a tua dúvida: DELETE ou DbDelete(). Seria isto?
[]´s
Alexandre Santos (AlxSts)
Avatar do usuário
bencz
Usuário Nível 4
Usuário Nível 4
Mensagens: 524
Registrado em: 28 Abr 2012 17:36
Contato:

xHarbour 100% Orientado a Objetos - Uma pequena introdução

Mensagem por bencz »

a minha duvida, seria de como excluir um elemento do arquivo DBF
por exemplo, usando esse código do tutorial aqui postado, e eu quero criar uma opção para deletar um elemento do arquivo DBF, por exemplo, "varig", como posso fazer isso ?
Imagem
Responder