Avaliação do Tópico:
  • 0 votos - 0 Média
  • 1
  • 2
  • 3
  • 4
  • 5
ERRO EM orm.dll.generator - BuilderAlterFieldDefinitionFixFirebird
#1
Está dando erro no ORMbr novamente. (É um bug atrás do outro) acho que o ORMbr está precisando de muitos testes para ficar bom, como eu tenho mais coisas para fazer irei dar um tempo; Preciso terminar meus projetos..

NA unit ORM.DLL.GENERATOR:

Encontrem o seguinte método:

  ----->>>> function BuilderAlterFieldDefinitionFixFirebird(AColumn: TColumnMIK): string;

Esta função é chamada deste outro método:
    
    function TDDLSQLGeneratorFirebird.GenerateAlterColumn(AColumn: TColumnMIK): string;
begin
  Result := 'ALTER TABLE %s ALTER COLUMN %s TYPE %s;';
  Result := Format(Result, [AColumn.Table.Name,
                            AColumn.Name,
                            BuilderAlterFieldDefinitionFixFirebird(AColumn)]);      <<<<<<<-------
end;

Reparem que está gerando clause errada para o firebird:

ALTER TABLE pessoa ALTER COLUMN Renda TYPE Renda NUMERIC(9,2);

Para funcionar no firebird o correto seria;

ALTER TABLE pessoa ALTER COLUMN Renda TYPE NUMERIC(9,2)
Responder
#2
(25-01-2018, 10:52 AM)willian Escreveu: Está dando erro no ORMbr novamente. (É um bug atrás do outro) acho que o ORMbr está precisando de muitos testes para ficar bom, como eu tenho mais coisas para fazer irei dar um tempo; Preciso terminar meus projetos..

NA unit ORM.DLL.GENERATOR:

Encontrem o seguinte método:

  ----->>>> function BuilderAlterFieldDefinitionFixFirebird(AColumn: TColumnMIK): string;

Esta função é chamada deste outro método:
    
    function TDDLSQLGeneratorFirebird.GenerateAlterColumn(AColumn: TColumnMIK): string;
begin
  Result := 'ALTER TABLE %s ALTER COLUMN %s TYPE %s;';
  Result := Format(Result, [AColumn.Table.Name,
                            AColumn.Name,
                            BuilderAlterFieldDefinitionFixFirebird(AColumn)]);      <<<<<<<-------
end;

Reparem que está gerando clause errada para o firebird:

ALTER TABLE pessoa ALTER COLUMN Renda TYPE Renda NUMERIC(9,2);

Para funcionar no firebird o correto seria;

ALTER TABLE pessoa ALTER COLUMN Renda TYPE NUMERIC(9,2)

bom dia
primeiro ele é aberto foi feito seu começo agora a comunidade deve ajudar e ajustar .
qual versão do firebird está a usar? tem diferenças entre a 2.5 e a 3.0
Juliomar Marchetti
Consultoria e Desenvolvimento
Paf-ECF/NF-e/NFC-e/TEF/CT-e/NFS-e/MDF-e/SPED


Skype: juliomar
Chapecó / SC
Responder
#3
(25-01-2018, 10:52 AM)willian Escreveu: Está dando erro no ORMbr novamente. (É um bug atrás do outro) acho que o ORMbr está precisando de muitos testes para ficar bom, como eu tenho mais coisas para fazer irei dar um tempo; Preciso terminar meus projetos..

NA unit ORM.DLL.GENERATOR:

Encontrem o seguinte método:

  ----->>>> function BuilderAlterFieldDefinitionFixFirebird(AColumn: TColumnMIK): string;

Esta função é chamada deste outro método:
    
    function TDDLSQLGeneratorFirebird.GenerateAlterColumn(AColumn: TColumnMIK): string;
begin
  Result := 'ALTER TABLE %s ALTER COLUMN %s TYPE %s;';
  Result := Format(Result, [AColumn.Table.Name,
                            AColumn.Name,
                            BuilderAlterFieldDefinitionFixFirebird(AColumn)]);      <<<<<<<-------
end;

Reparem que está gerando clause errada para o firebird:

ALTER TABLE pessoa ALTER COLUMN Renda TYPE Renda NUMERIC(9,2);

Para funcionar no firebird o correto seria;

ALTER TABLE pessoa ALTER COLUMN Renda TYPE NUMERIC(9,2)

Olá Willian

Você está generalizando o BUG para todo o projeto ORMBr (Atualizar estrutura de banco)
Nem o Aurelius que é uma framework PAGO, faz esse recurso que vc está questionando.
O ADD criar novos campos é muito fácil ta funcionando legal.
ALTER, mudar campo do banco não é tão fácil assim, eu realmente tentei fazer, até separei os frameworks para ê se consegui ajuda da comunidade, mas como sempre NUNCA tive nada.

E como vc mesmo disse, vc tem mais o que fazer, e eu tambem, em estar lendo posts como esse, de pessoas como vc, que não trará nada de proveitoso para o projeto, mas estou acostumado, vc deve ser usuário do ACBr tb, la vivenciei com muita gente desse tipo.

Obrigado pelo relato, e agradecido por parar de testar o projeto, me fez um favor.
--------------------------------
Isaque Pinheiro
Projeto ORM Brasil
Responder


Saltar Fórum:


usuários a ver este tópico: 1 Visitante(s)