Search the Community

Showing results for tags 'travar registro'.



More search options

  • Search By Tags

    Type tags separated by commas.
  • Search By Author

Content Type


Forums

  • Windev Desktop, Mobile, Web
    • Windev Desktop
    • Windev Mobile
    • Webdev
    • Bugs
  • Banco de Dados
    • HFSQL
    • PostgreSQL
    • MySQL, MariaDB, Outros
  • Vendendo Seu Peixe
    • Hire a Professional to solve your Demand!
    • Cursos
    • Aplicativos
  • Tips and Tricks
    • Tips and Tricks
    • Fivewin / xHb / Harbor migration to Windev

Categories

  • Files

Calendars

  • Community Calendar

Categories

  • Articles

Found 1 result

  1. Esse é o código usado nos testes para travamento de registro no Postgres. A instrução HReadSeekFirst com a diretiva lockWrite HReadSeekFirst(cobradores,id_cob,TABLE_Cobradores.COL_id_Cob,hLockWrite+hLimitParsing) Não retornava o código que indica registro travado ( 55P03 ) do Postgres. Após várias tentativas chegamos a essa instruçào: sSql is string= "select * from cobradores where id_cob ="+TABLE_Cobradores.COL_id_Cob+" for update nowait;" sQ is Data Source SQLTransaction(sqlStart,Quantum_Conection) // abre a transação IF HExecuteSQLQuery(sQ,Quantum_Conection,hQueryWithoutCorrection,sSql) = False THEN Info(HErrorInfo(hErrFullDetails)) SQLTransaction(sqlRollBack,Quantum_Conection) RETURN ELSE FOR EACH sQ Trace(sQ.nome_cob) EDT_Nome = sQ.nome_cob RADIO_Situ= sQ.situ_cob EDT_Comissao= sQ.comissao_cob END END Note que a finalização da transação não foi feita, essa terá de ser acionada após um update. SQLTransaction(sqlRollBack,Quantum_Conection) Ela só foi chamada quando deu erro. No projeto de testes, criei um botão de liberação para simular o fechamento da transação. Com essa solução o update após a alteração, se existir, terá de ser feito com outra query da mesma forma que foi feita a query da select. Isso anulará as instruções FileToScreen e ScreenToFile. No projeto eu utilizei a conection do Analysis, mas isso poderá ser feito sem o Analysis. A imagem mostrando o Lock ( lock de registro Windev + Postgres.png ), está dentro do projeto zipado. Agradecimentos a todos que de alguma forma contribuíram para essa solução, em especial a Paulo Viana e Nelson da Softcomp. Qualquer erro encontrado ou uma nova forma que encontraram, agradeceria se reportassem. Abcs Ronaldo Silva Record_Lock.rar