チケット #39046

Vários problemas (importados do To-Do local)

登録: 2019-03-12 10:25 最終更新: 2019-05-28 04:32

報告者:
担当者:
チケットの種類:
状況:
オープン [担当者決定済み]
コンポーネント:
マイルストーン:
(未割り当て)
優先度:
5 - 中
重要度:
5 - 中
解決法:
受領
ファイル:
なし

詳細

  • IMPORTANTE! fazer os allowablemainobjectscontainers estarem sempre no mesmo owner do UC (mesmo tform ou mesmo TDataModule)
  • MemoryLeak em UUCFrameUsers. Está sendo criado um TDataSet e atribuiído diretamente a um datasource, mas em nenhum momento ele está sendo destruído. Verifique todos os métodos que retornam dataset para saber se eles estão sendo destruidos. Existe um aviso no frame que diz pra não destruir um dataset, que o UC toma conta dele, mas eu acho que isso está errado...
  • Select Integrador ExternalSQL
  • Existem validações de tabelas sendo feitas no CheckRequiredProperties de user control. Mova isso para cada tabela! E crie as validações das outras tabelas, porque atualmente apenas users e rights estão sendo validadas. Possivelmente so precisam destas duas mesmo, verifique;
  • o lock de operacoes de banco está erradamente mantendo o lock ou a liberação de um usuario anterior, ao iniciar a aplicação com o usuario nao se nota, ao trocar de usuario sim. é preciso guardar os eventos originais de cada operacao (insert, delete, update) e recupera-los sempre que se trocar de usuario ApplyAdditionalObjectsRights. AssignComponentInstancesFrom. mude o metodo Lock, coloque mais 3 parametros para receber os ponteiros dos metodos insert, delete e update originais e em AssignComponentInstancesFrom ajuste para atribuir os ponteiros, que serao usados em lock
  • Ao fechar a aplicação, o logoff nao é executado. mas por conta disso, o registro de log de usuarios nao é removido
  • Explicar e que o demo qubra com o fb, pq ele não tem o tipo TDateTime mas sim TSQLTimestamp
  • Fazer algo com o form inicial, uma ajuda ao menos, pra que o povo saiba qu ele existe. Vide OnCustomInitialMsg
  • Testar login inicial
  • Melhorar TUCMail.TrataSenha. Mover para TUsersTable.RecoverPassword. Se a critptografia for reversivel, então reverter, do contrário gera uma nova sempre
  • Buscar referencias a hlLevelX e incluir hlLevel3
  • Tem alguma coisa desativando o timer de verificação de mensagens... Teste: adicione um tusercontrol, depois um tucmessenger, ligue os dois e só depois inclua um conector e associe-o ao tusercontrol. verifique se tucmessenger aponta pra ele ou se permanece nil
  • Ao mandar uma mensagem via tela de listagem de usuários logaos, deixe o tempo de sessão acabar, faça login novamente e note que não vai receber a mensagem, apenas se fehcar e abrir o programa novamente
  • Não está excluindo do log o usuário admin?? (Isso parece ser o problema resolvido por paandaa)

チケットの履歴 (11 件中 3 件表示)

2019-03-12 10:25 更新者: derekwildstar
  • 新しいチケット "Vários problemas (importados do To-Do local)" が作成されました
2019-03-12 10:27 更新者: derekwildstar
コメント

IMPORTANTE! fazer os allowablemainobjectscontainers estarem sempre no mesmo owner do UC (mesmo tform ou mesmo TDataModule)

Isso era necessário porque o UC fazia validações no método Loaded, mas como o método Loaded foi removido o TAllowableMainObjectsContainer pode ficar em qualquer lugar, desde que o método TUserControl.Execute seja executado em um momento em que o TAllowableMainObjectsContainer já esteja disponível. Mensagens de erro serão emitidas para cada propriedade obrigatória não preenchida

(編集済, 2019-03-12 10:28 更新者: derekwildstar)
2019-03-12 10:29 更新者: derekwildstar
コメント

MemoryLeak em UUCFrameUsers. Está sendo criado um TDataSet e atribuiído diretamente a um datasource, mas em nenhum momento ele está sendo destruído. Verifique todos os métodos que retornam dataset para saber se eles estão sendo destruidos. Existe um aviso no frame que diz pra não destruir um dataset, que o UC toma conta dele, mas eu acho que isso está errado...

Este problema foi totalmente corrigido! Neste momento não foi detectado mais nenhum Memory Leak, mesmo após acessar todos os frames da tela de usuários

2019-03-12 10:29 更新者: derekwildstar
コメント

Reply To derekwildstar

Select Integrador ExternalSQL

Testado e totalmente funcional!

2019-03-12 10:30 更新者: derekwildstar
  • 解決法なし から 受領 に更新されました
2019-03-12 10:32 更新者: derekwildstar
コメント

Existem validações de tabelas sendo feitas no CheckRequiredProperties de user control. Mova isso para cada tabela! E crie as validações das outras tabelas, porque atualmente apenas users e rights estão sendo validadas. Possivelmente so precisam destas duas mesmo, verifique;

Todas as validações para todas as tabelas foram criadas

2019-03-12 10:34 更新者: derekwildstar
コメント

O lock de operacoes de banco está erradamente mantendo o lock ou a liberação de um usuario anterior, ao iniciar a aplicação com o usuario nao se nota, ao trocar de usuario sim. é preciso guardar os eventos originais de cada operacao (insert, delete, update) e recupera-los sempre que se trocar de usuario ApplyAdditionalObjectsRights AssignComponentInstancesFrom. mude o metodo Lock, coloque mais 3 parametros para receber os ponteiros dos metodos insert, delete e update originais e em AssignComponentInstancesFrom ajuste para atribuir os ponteiros, que serao usados em lock

Problema resolvido, mas descobri que há um efeito colateral entre o lock de operações de banco e o TDataSetMonitor. Vou criar um ticket separado para isso

2019-03-12 11:18 更新者: derekwildstar
  • マイルストーン3.1 から (未割り当て) に更新されました
2019-05-28 04:28 更新者: derekwildstar
  • 詳細が更新されました
2019-05-28 04:29 更新者: derekwildstar
  • 詳細が更新されました
2019-05-28 04:32 更新者: derekwildstar
  • 詳細が更新されました

添付ファイルリスト

添付ファイルはありません

編集

ログインしていません。ログインしていない状態では、コメントに記載者の記録が残りません。 » ログインする