Commit 94bf16fa authored by Erika Segatto's avatar Erika Segatto

Correção de bug que acontecia qndo a classe tinha um construtor apenas com o id

parent 16b4251a
......@@ -5456,24 +5456,35 @@ begin
lCodigoClasse.WriteLine('}');
// Escrever construtor com id com relacionamentos
lCodigoClasse.WriteLine('');
lCodigoClasse.WriteLine('public '+lsNomeClasseDB+'('+_DBTipoId+' piId, '+strutils.LeftStr(lParamsConstrutor, Length(lParamsConstrutor)-2)+') {');
if lParamsConstrutor <> ''
then lCodigoClasse.WriteLine('public '+lsNomeClasseDB+'('+_DBTipoId+' piId, '+strutils.LeftStr(lParamsConstrutor, Length(lParamsConstrutor)-2)+') {')
else lCodigoClasse.WriteLine('public '+lsNomeClasseDB+'('+_DBTipoId+' piId) {');
lCodigoClasse.Indent();
if lEhClasseHerdada then
lCodigoClasse.WriteLine('super(piId, ' + lListaChamadaSuper.CommaText + ');')
else
lCodigoClasse.WriteLine(_NomeId+' = piId;');
if lEhClasseHerdada
then begin
if lListaChamadaSuper.Count > 0
then lCodigoClasse.WriteLine('super(piId, ' + lListaChamadaSuper.CommaText + ');')
else lCodigoClasse.WriteLine('super(piId);')
end
else lCodigoClasse.WriteLine(_NomeId+' = piId;');
lCodigoClasse.Append(lCodigoConstrutor);
lCodigoClasse.Outdent();
lCodigoClasse.WriteLine('}');
// Escrever construtor com id sem relacionamentos
lCodigoClasse.WriteLine('');
if lParamsConstrutorSemRelOut <> lParamsConstrutor then
begin
lCodigoClasse.WriteLine('public '+lsNomeClasseDB+'('+_DBTipoId+' piId, '+strutils.LeftStr(lParamsConstrutorSemRelOut, Length(lParamsConstrutorSemRelOut)-2)+') {');
begin
if lParamsConstrutorSemRelOut <> ''
then lCodigoClasse.WriteLine('public '+lsNomeClasseDB+'('+_DBTipoId+' piId, '+strutils.LeftStr(lParamsConstrutorSemRelOut, Length(lParamsConstrutorSemRelOut)-2)+') {')
else lCodigoClasse.WriteLine('public '+lsNomeClasseDB+'('+_DBTipoId+' piId) {');
lCodigoClasse.Indent();
if lEhClasseHerdada
then lCodigoClasse.WriteLine('super(piId, ' + lListaChamadaSuperSemRelOut.CommaText + ');')
else lCodigoClasse.WriteLine(_NomeId+' = piId;');
then begin
if lListaChamadaSuper.Count > 0
then lCodigoClasse.WriteLine('super(piId, ' + lListaChamadaSuper.CommaText + ');')
else lCodigoClasse.WriteLine('super(piId);')
end
else lCodigoClasse.WriteLine(_NomeId+' = piId;');
lCodigoClasse.Append(lCodigoConstrutorSemRelOut);
lCodigoClasse.Outdent();
lCodigoClasse.WriteLine('}');
......@@ -5801,10 +5812,16 @@ begin
lCodigoClasse.WriteLine('}');
//Escreve construtor com id
lCodigoClasse.WriteLine('');
lCodigoClasse.WriteLine('public ' + lsNomeClasse + '(' +_TipoId + ' piId,' + lListaParamsConstrutor.DelimitedText + ') {');
if lListaParamsConstrutor.Count > 0
then lCodigoClasse.WriteLine('public ' + lsNomeClasse + '(' +_TipoId + ' piId,' + lListaParamsConstrutor.DelimitedText + ') {')
else lCodigoClasse.WriteLine('public ' + lsNomeClasse + '(' +_TipoId + ' piId) {');
lCodigoClasse.Indent();
if lEhClasseHerdada
then lCodigoClasse.WriteLine('super(piId, ' + lListaChamadaSuper.CommaText + ');')
then begin
if lListaChamadaSuper.Count > 0
then lCodigoClasse.WriteLine('super(piId, ' + lListaChamadaSuper.CommaText + ');')
else lCodigoClasse.WriteLine('super(piId);')
end
else lCodigoClasse.WriteLine(_NomeId+' = piId;');
lCodigoClasse.Append(lCodigoConstrutor);
lCodigoClasse.Outdent();
......@@ -5812,12 +5829,18 @@ begin
//Escreve construtor com id e sem relacionamentos
lCodigoClasse.WriteLine('');
if lListaParamsConstrutorSemRelOut.Count <> lListaParamsConstrutor.Count then
begin
lCodigoClasse.WriteLine('public '+lsNomeClasse+'('+_TipoId+' piId,'+lListaParamsConstrutorSemRelOut.DelimitedText+') {');
begin
if lListaParamsConstrutorSemRelOut.Count > 0
then lCodigoClasse.WriteLine('public ' + lsNomeClasse + '(' +_TipoId + ' piId,' + lListaParamsConstrutorSemRelOut.DelimitedText + ') {')
else lCodigoClasse.WriteLine('public ' + lsNomeClasse + '(' +_TipoId + ' piId) {');
lCodigoClasse.Indent();
if lEhClasseHerdada
then lCodigoClasse.WriteLine('super(piId, ' + lListaChamadaSuperSemRelOut.CommaText + ');')
else lCodigoClasse.WriteLine(_NomeId+' = piId;');
then begin
if lListaChamadaSuper.Count > 0
then lCodigoClasse.WriteLine('super(piId, ' + lListaChamadaSuper.CommaText + ');')
else lCodigoClasse.WriteLine('super(piId);')
end
else lCodigoClasse.WriteLine(_NomeId+' = piId;');
lCodigoClasse.Append(lCodigoConstrutorSemRelOut);
lCodigoClasse.Outdent();
lCodigoClasse.WriteLine('}');
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment