Luiz Arruda (ICO) Posted September 8, 2005 Report Share Posted September 8, 2005 Bom Dia. Bem é o seguinte. Meu prog. está em rede, tá funcionando que é uma beleza (quase) só que ao dar um append no SERVIDOR retorna o erro abaixo, lembrando que isso nao ocorre se eu dar o APPEND FRom em um terminal. Porque ?? Tai o erro é esse; Error description: Error DBFNTX/1020 Data type error Called from LOCKERRHAN(0) Called from (b)INITHANDL$(0) Called from __DBTRANS(0) Called from __DBAPP(0) Called from ATSALDOS(16) esta é a linha do APPENDid=blue> Called from (b)MAINN(93) Called from TBTNBMP:CLICK(0) Called from TBTNBMP:LBUTTONUP(0) Called from TBTNBMP:HANDLEEVEN(0) Called from WINRUN(0) Called from TWINDOW:ACTIVATE(0) Called from MAINN(142) Obrigado VOCÊ NAO PODE PERDER: 3º ENCONTRO DE FIVEWINNERS NOVEMBRO DE 2005 iko67@ibest.com.br Quote Link to comment Share on other sites More sharing options...
Luiz Arruda (ICO) Posted September 8, 2005 Author Report Share Posted September 8, 2005 Bom Dia. Bem é o seguinte. Meu prog. está em rede, tá funcionando que é uma beleza (quase) só que ao dar um append no SERVIDOR retorna o erro abaixo, lembrando que isso nao ocorre se eu dar o APPEND FRom em um terminal. Porque ?? Tai o erro é esse; Error description: Error DBFNTX/1020 Data type error Called from LOCKERRHAN(0) Called from (b)INITHANDL$(0) Called from __DBTRANS(0) Called from __DBAPP(0) Called from ATSALDOS(16) esta é a linha do APPENDid=blue> Called from (b)MAINN(93) Called from TBTNBMP:CLICK(0) Called from TBTNBMP:LBUTTONUP(0) Called from TBTNBMP:HANDLEEVEN(0) Called from WINRUN(0) Called from TWINDOW:ACTIVATE(0) Called from MAINN(142) Obrigado VOCÊ NAO PODE PERDER: 3º ENCONTRO DE FIVEWINNERS NOVEMBRO DE 2005 iko67@ibest.com.br Quote Link to comment Share on other sites More sharing options...
Luiz Arruda (ICO) Posted September 8, 2005 Author Report Share Posted September 8, 2005 Bom Dia. Bem é o seguinte. Meu prog. está em rede, tá funcionando que é uma beleza (quase) só que ao dar um append no SERVIDOR retorna o erro abaixo, lembrando que isso nao ocorre se eu dar o APPEND FRom em um terminal. Porque ?? Tai o erro é esse; Error description: Error DBFNTX/1020 Data type error Called from LOCKERRHAN(0) Called from (b)INITHANDL$(0) Called from __DBTRANS(0) Called from __DBAPP(0) Called from ATSALDOS(16) esta é a linha do APPENDid=blue> Called from (b)MAINN(93) Called from TBTNBMP:CLICK(0) Called from TBTNBMP:LBUTTONUP(0) Called from TBTNBMP:HANDLEEVEN(0) Called from WINRUN(0) Called from TWINDOW:ACTIVATE(0) Called from MAINN(142) Obrigado VOCÊ NAO PODE PERDER: 3º ENCONTRO DE FIVEWINNERS NOVEMBRO DE 2005 iko67@ibest.com.br Quote Link to comment Share on other sites More sharing options...
kapiaba Posted September 8, 2005 Report Share Posted September 8, 2005 Error DBFNTX/1020 Data type error TIPO DE DADO ESTA ERRADO. VERIFIQUE. O MODO DE ABERTURA, DEVE SER EXCLUSIVE. TERCEIRO ENCONTRO DE FIVEWINNERS NOVEMBRO DE 2005 EU APOIO E VOU. Bad Boy - São Paulo. kmt_karinha@pop.com.br FW 2.3C CLIPPER 5.3B BLINKER 7.0 WORKSHOP.EXE Quote Link to comment Share on other sites More sharing options...
Luiz Arruda (ICO) Posted September 8, 2005 Author Report Share Posted September 8, 2005 Ola Kapiaba. veja como estou fazendo. SELECT 2 USE C:\DADOS\EMITE ALIAS EMITE EXCLUSIVE NEW ZAP APPEND FROM DIARIO FOR CONTA:=CTA e isto está ocorrendo somente no servidor, nos terminais nao Abraços VOCÊ NAO PODE PERDER: 3º ENCONTRO DE FIVEWINNERS NOVEMBRO DE 2005 iko67@ibest.com.br Quote Link to comment Share on other sites More sharing options...
kapiaba Posted September 8, 2005 Report Share Posted September 8, 2005 NAO. DEPOIS DO ZAP, FECHE, E ABRA EM MODO COMPARTILHADO AI VOCE DA O APPEND TIO. TERCEIRO ENCONTRO DE FIVEWINNERS NOVEMBRO DE 2005 EU APOIO E VOU. Bad Boy - São Paulo. kmt_karinha@pop.com.br FW 2.3C CLIPPER 5.3B BLINKER 7.0 WORKSHOP.EXE Quote Link to comment Share on other sites More sharing options...
Luiz Arruda (ICO) Posted September 8, 2005 Author Report Share Posted September 8, 2005 Nao deu. VOCÊ NAO PODE PERDER: 3º ENCONTRO DE FIVEWINNERS NOVEMBRO DE 2005 iko67@ibest.com.br Quote Link to comment Share on other sites More sharing options...
conpete Posted September 8, 2005 Report Share Posted September 8, 2005 citação:SELECT 2USE C:\DADOS\EMITE ALIAS EMITE EXCLUSIVE NEW ZAP APPEND FROM DIARIO FOR CONTA:=CTA **** Nao deu. id=quote>id=quote>select 2 use c:\dados\emite exclusive if .not. NETERR() zap append frm Diario for conta=CTA ELSE ....... ENDIF ****** Mangueira Clipper53b/Blinker7/FW2.6(Ufa!!!)/MED 3.01/WorkShop 4.5 forumfw@conpete.com.br mangueira@ig.com.br Manaus - Amazonas Visite Manaus-Am e Tambem Campina Grande-PB III ENCONTRO DE USUÃRIOS DE FIVEWIN - 2005... To Nessa!!!!! Quote Link to comment Share on other sites More sharing options...
Anderson.OL Posted September 8, 2005 Report Share Posted September 8, 2005 Kra, desculpem-me meter o bedelho, mas naum existe dois campos de mesmo nome, mas de tipos diferentes?? Tipo "NOME","C",40,0 & "NOME","N",40,0 Pois o que eu entendo por DBFNTX/1020 Data type error é que este erro só ocorre qdo se atribui um valor para uma variavel de tipo incompativel.. Desculpem-me se eu estiver errado Abraços Nesse mundo nada se cria, tudo se compila<< //--Clipper 5.3b / FiveWin 2.6 / Blinker 7.0 --// //-- _Dom Quixote_ RO Iris Server / Agility Kina / 7*/3* Quote Link to comment Share on other sites More sharing options...
pauloaraujo Posted September 8, 2005 Report Share Posted September 8, 2005 Ico, Ou é o que o Anderson falou (verifique estrutura dos 2 dbfs) ou o campo CONTA está com um tipo e a variável CTA com outro. Paulo/CONTATO SISTEMAS Clipper53b / FW26 / Blinker70 Ajudar é um prazer, agradecer é uma obrigação PRESTIGIEM O III ENCONTRO DE USUÃRIOS DE FIVEWIN - 2005 Quote Link to comment Share on other sites More sharing options...
Luiz Arruda (ICO) Posted September 8, 2005 Author Report Share Posted September 8, 2005 Boa Tarde. e obrigado a todos.. Entrei na pasta dados apaguei emite.DBF copiei diario.dbf como EMITE.DBF e pronto. + 1 caso resolvido.. VOCÊ NAO PODE PERDER: 3º ENCONTRO DE FIVEWINNERS NOVEMBRO DE 2005 iko67@ibest.com.br Quote Link to comment Share on other sites More sharing options...
pauloaraujo Posted September 8, 2005 Report Share Posted September 8, 2005 Ico, Conclusão: o Anderson estava certo. Um abraço Paulo/CONTATO SISTEMAS Clipper53b / FW26 / Blinker70 Ajudar é um prazer, agradecer é uma obrigação PRESTIGIEM O III ENCONTRO DE USUÃRIOS DE FIVEWIN - 2005 Quote Link to comment Share on other sites More sharing options...
macs Posted September 9, 2005 Report Share Posted September 9, 2005 Isto não é solução!!! Se ocorreu uma vez, pode ocorreo outras vezes. Será que o cliente vai querer ficar apagando e renomeando tabelas??? Eu não utilizo o Append From por conta disso. Ja tive vários problemas. Criei uma função semelhante, mas bem mais rápida. ******************************************************************************** * Funcao......: MyDbApp() * * Objetivo....: Appenda uma tabela na outra * * Autor.......: Marcio Augusto Cezar * * Data........: 30/8/2005 10:51:11 * ******************************************************************************** * Parametros..: cAlias --> Alias do arquivo a ser pesquisado * * bSeek --> Condição de Seek para pesquisa * * bCondicao --> Condição de avaliação * * cField --> Campo a ser pesquisado e atualizado com xValor * * xValor --> Valor para atualizar o campo definido com cField* ******************************************************************************** * Retorno.....: NIL * ******************************************************************************** * Observação..: * ******************************************************************************** STATIC PROCEDURE MyDbApp( cAlias, bSeek, bCondicao, cField, xValor ) LOCAL nCont, nPos, nTotalFields LOCAL cAliasRead := cAlias LOCAL aArrayFieldAux := {} DEFAULT bSeek := { || .T. } DEFAULT bCondicao := { || .T. } aArrayFieldAux := {} FOR nCont := 1 TO FCount() AAdd( aArrayFieldAux, Field( nCont ) ) NEXT nTotalFields := LEN( aArrayFieldAux ) IF EVal( bSeek ) WHILE EVal( bCondicao ) .AND. &cAliasRead.->( ! Eof() ) AddRec(5) FOR nCont := 1 TO nTotalFields IF Field( nCont ) <> &cAliasRead.->( Field( nCont ) ) IF ( nPos := AScan( aArrayFieldAux, &cAliasRead.->( Field( nCont ) ) ) ) <> 0 FieldPut( nPos, &cAliasRead.->( FieldGet( nCont ) ) ) IF cField <> NIL .AND. UPPER( ALLTRIM( cField ) ) == Field( nPos ) FieldPut( nPos, xValor ) ENDIF ENDIF ELSE IF ValType( FieldGet( nCont ) ) == ValType( &cAliasRead.->( FieldGet( nCont ) ) ) FieldPut( nCont, &cAliasRead.->( FieldGet( nCont ) ) ) ENDIF IF cField <> NIL .AND. UPPER( ALLTRIM( cField ) ) == Field( nCont ) FieldPut( nCont, xValor ) ENDIF ENDIF NEXT DbUnLock() &cAliasRead.->( DbSkip() ) ENDDO ENDIF RETURN Márcio Augusto Cezar FWH 2.6 PELLES 3.00.4 marcio.cezar@gmail.com Quote Link to comment Share on other sites More sharing options...
Luiz Arruda (ICO) Posted September 9, 2005 Author Report Share Posted September 9, 2005 Marcio. Muito obrigado, mais veja o que deve ter acontecido comigo. tenho uma pasta chamada "dados" em cada micro (4), onde deixo arquivos temp. etc... e os principais no Servidor, por força do habito devo ter criado um arquivo emite.dbf p/ outro programa com parametros diferentes. Mais valeu vou tentar aproveitar sua dica. Abraços. VOCÊ NAO PODE PERDER: 3º ENCONTRO DE FIVEWINNERS NOVEMBRO DE 2005 iko67@ibest.com.br Quote Link to comment Share on other sites More sharing options...
conpete Posted September 9, 2005 Report Share Posted September 9, 2005 Meus nobres companheiros..... Um dos fatores para o bom funcionamento de um sistema é a organização dos dados. Por mais que vc planeje seu sistema, sempre terá algo mais a acrescenta ou modificar, por isso se faz necessário uma rotina que cheque o banco de dados e que possibilite efetuar modificações na estrutura sempre que ocorrer uma mudança no projeto e isto de modo transparente ao usuário e sob seu domÃnio. No meu caso, não abro mão de quatro funções que são: Primeira Função FUNCTION USO Para _nrArquvo Do case Case _nrAquivo = 1 Arq=c:\arquivos\cadcli.dbf Gera(_nrArquivo) Verifica(_nrArquivo) Ordena(_nrArquivo)_ Use &Arq Set index to &tal1, &tal2... etc ....... ....... Endcase Return .t. Segunda função FUNCTION Gera Para _nrArquvo Do case Case _nrArquivo = 1 Se não existe &arq Cria o arquivo tal ....... ...... endcase Terceira função FUNCTION Verifica Para _nrArquvo Do case Case _nrArquivo = 1 Verificar se campo tal existe ou se o tipo de dado do campo e valido. Senão 1 – fecha o arquivo 2 - Modifica o nome do o arquivo 3 – Chama a função GERA 4 – usa o novo arquivo 5 – Append do arquivo que teve o nome modificado ....... endcase return .t. Quarta função FUNCTION Ordena Para _nrArquvo Do case Case _nrArquivo = 1 Index ...... to .... ..... .... endcase return .t. Obviamente esta funções deverão ser otimizadas a critério e conhecimento do Programador. Bom Fim de semana Mangueira Clipper53b/Blinker7/FW2.6(Ufa!!!)/MED 3.01/WorkShop 4.5 forumfw@conpete.com.br mangueira@ig.com.br Manaus - Amazonas Visite Manaus-Am e Tambem Campina Grande-PB III ENCONTRO DE USUÃRIOS DE FIVEWIN - 2005... To Nessa!!!!! Quote Link to comment Share on other sites More sharing options...
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.