2010/5/30 Paulo Coutinho <pa...@prsolucoes.com>:
> Alguém testou?
>
> Tem alguma sugestão?
>

Não testei, mas vi o código.
Se está buscando opiniões, espero que aceite as críticas construtivas abaixo:

- Não entendi porque o framework é para acesso a dados. Isso já temos
aos montes por aí.
- Existem várias classes praticamente sem código; ou elas são
desnecessárias ou imcompletas.
- Na classe TPRFWK_Gerente (sugiro utilizar nomes bem menores nas
classes e units) vc tem atributos do tipo TPRFWK_ClientDataSet e
TPRFWK_ADODataSet. Se o framework é para "acesso a dados de forma
transparente" vc não deveria "amarrar" a forma de conexão; nem todos
utilizam ClientDataSet.
- unit projeto_teste\UFrmPrincipal.pas possui códigos bem confusos:
procedure TFrmPrincipal.alterarItem;
begin
  if (lvItens.ItemIndex > -1) then
  begin
    gMembro := TPRFWK_Membro.Create;

    gMembro.ID := StrToInt(lvItens.Items[lvItens.ItemIndex].Caption);
    gMembro := gGR_Membro.obter(gMembro) as TPRFWK_Membro;

    if (gMembro <> nil) then
    begin
      gMembro.nome := edNome.Text;
      gGR_Membro.alterar(gMembro);
      gMembro.Free;
    end;

    carregarGrid();
  end;
end;

procedure TFrmPrincipal.excluirItem;
begin
  if (lvItens.ItemIndex > -1) then
  begin
    gMembro := TPRFWK_Membro.Create;

    gMembro.ID := StrToInt(lvItens.Items[lvItens.ItemIndex].Caption);
    gMembro := gGR_Membro.obter(gMembro) as TPRFWK_Membro;

    if (gMembro <> nil) then
    begin
      gGR_Membro.excluir(gMembro);
      gMembro.Free;
    end;

    carregarGrid();
  end;
end;

procedure TFrmPrincipal.inicializar;
var
  lTemp  : String;
begin
  //título
  lTemp := 
MD_PRFWK_Utilidades.TPRFWK_Utilidades.obterInstancia().obterConfiguracao('APLICACAO',
'titulo', '');
  self.Caption := lTemp;

  //conexão
  //TSqlConnection ou TAdoConnection
  gConexao := TPRFWK_Conexao.Create;
  gConexao.vendorlib   :=
MD_PRFWK_Utilidades.TPRFWK_Utilidades.obterInstancia().obterConfiguracao('CONEXAO',
'vendorlib', '');
  gConexao.libraryName :=
MD_PRFWK_Utilidades.TPRFWK_Utilidades.obterInstancia().obterConfiguracao('CONEXAO',
'libraryname', '');
  gConexao.criarConexao(
MD_PRFWK_Utilidades.TPRFWK_Utilidades.obterInstancia().obterConfiguracao('CONEXAO',
'driver', ''),

MD_PRFWK_Utilidades.TPRFWK_Utilidades.obterInstancia().obterConfiguracao('CONEXAO',
'nomeconexao', '')
                         );
  gConexao.conectar;
end;

Sem manual e/ou exemplos claros, fica muito dificil o pessoal começar
a utilizar.


Marcos Douglas

Responder a