Commit 37fa2646 authored by Erika Segatto's avatar Erika Segatto

Melhoria e correção de bug na geração de código java hibernate

parent 6a6ad98d
...@@ -185,6 +185,14 @@ implementation ...@@ -185,6 +185,14 @@ implementation
uses dialogs, uDBAttributeParameters, acuFramework, Forms, DelphiAddInObj, uses dialogs, uDBAttributeParameters, acuFramework, Forms, DelphiAddInObj,
Controls, strutils, utuMessage, utuXSD, acuModelMapping, acuUseCaseStateMachine; Controls, strutils, utuMessage, utuXSD, acuModelMapping, acuUseCaseStateMachine;
function FirstLetterLowerCase(const piString: string): string;
begin
if piString.Length > 0 then
Result := ((piString.ToLower)[1]) + piString.Remove(0, 1)
else
Result := '';
end;
function InitializeAddIn(AApplicationHandle: THandle; AStarUMLApplication: TObject): Integer; {$IFDEF MSWINDOWS} stdcall; {$ELSE} cdecl; {$ENDIF} function InitializeAddIn(AApplicationHandle: THandle; AStarUMLApplication: TObject): Integer; {$IFDEF MSWINDOWS} stdcall; {$ELSE} cdecl; {$ENDIF}
begin begin
// Application.Handle := AApplicationHandle; // Application.Handle := AApplicationHandle;
...@@ -5078,21 +5086,27 @@ function TUtil.GerarClassPreview_JavaHibernate(piClass: IUMLClass): string; ...@@ -5078,21 +5086,27 @@ function TUtil.GerarClassPreview_JavaHibernate(piClass: IUMLClass): string;
//Escreve getter and setter //Escreve getter and setter
if not piLista then if not piLista then
begin begin
piCodigoClasse.WriteLine('public ' + piTipoAtributo+' get'+piNomeAtributo+'() { return '+piNomeAtributo+'; }'); piCodigoClasse.WriteLine('public ' + piTipoAtributo+' get'+piNomeAtributo+'() { return '+FirstLetterLowerCase(piNomeAtributo)+'; }');
if not piApenasGetter then if not piApenasGetter then
piCodigoClasse.WriteLine('public void set'+piNomeAtributo+'('+piTipoAtributo+' pi'+piNomeAtributo+') { '+piNomeAtributo+' = pi'+piNomeAtributo+'; }'); piCodigoClasse.WriteLine('public void set'+piNomeAtributo+'('+piTipoAtributo+' pi'+piNomeAtributo+') { '+FirstLetterLowerCase(piNomeAtributo)+' = pi'+piNomeAtributo+'; }');
end end
else else
begin begin
piCodigoClasse.WriteLine('public List<' + piTipoAtributo+'> get'+piNomeAtributo+'() { return '+piNomeAtributo+'; }'); piCodigoClasse.WriteLine('public List<' + piTipoAtributo+'> get'+piNomeAtributo+'() { return '+FirstLetterLowerCase(piNomeAtributo)+'; }');
end; end;
piCodigoClasse.WriteLine(''); piCodigoClasse.WriteLine('');
end; end;
procedure EscreverDeclaracaoAtributo(const piCodigoClasse: PStringWriter; const piTipoAtributo: String; const piNomeAtributo: String; piHasDescendants: Boolean);
begin
if piHasDescendants then piCodigoClasse.Write('protected ') else piCodigoClasse.Write('private ');
piCodigoClasse.WriteLine(piTipoAtributo+' '+FirstLetterLowerCase(piNomeAtributo)+';');
end;
procedure EscreverCriacaoLista(const piCodigoClasse: PStringWriter; const piNomeAtributo: String; const piMultiplicity: Integer); procedure EscreverCriacaoLista(const piCodigoClasse: PStringWriter; const piNomeAtributo: String; const piMultiplicity: Integer);
begin begin
if piMultiplicity > 1 then if piMultiplicity > 1 then
piCodigoClasse.WriteLine(piNomeAtributo + ' = new ArrayList<>();'); piCodigoClasse.WriteLine(FirstLetterLowerCase(piNomeAtributo) + ' = new ArrayList<>();');
end; end;
procedure EscreverInicializacaoAtributo(const piCodigoClasse: PStringWriter; const piNomeAtributo: String; const piMultiplicity: Integer); procedure EscreverInicializacaoAtributo(const piCodigoClasse: PStringWriter; const piNomeAtributo: String; const piMultiplicity: Integer);
...@@ -5100,11 +5114,11 @@ function TUtil.GerarClassPreview_JavaHibernate(piClass: IUMLClass): string; ...@@ -5100,11 +5114,11 @@ function TUtil.GerarClassPreview_JavaHibernate(piClass: IUMLClass): string;
if (piNomeAtributo <> '') then if (piNomeAtributo <> '') then
begin begin
if piMultiplicity = 1 then if piMultiplicity = 1 then
piCodigoClasse.WriteLine(piNomeAtributo + ' = pi' + piNomeAtributo + ';') piCodigoClasse.WriteLine(FirstLetterLowerCase(piNomeAtributo) + ' = pi' + piNomeAtributo + ';')
else else
begin begin
EscreverCriacaoLista(piCodigoClasse, piNomeAtributo, piMultiplicity); EscreverCriacaoLista(piCodigoClasse, piNomeAtributo, piMultiplicity);
piCodigoClasse.WriteLine('if (pi'+piNomeAtributo+' != null) { '+piNomeAtributo + '.addAll(pi'+piNomeAtributo+'); }'); piCodigoClasse.WriteLine('if (pi'+piNomeAtributo+' != null) { '+FirstLetterLowerCase(piNomeAtributo) + '.addAll(pi'+piNomeAtributo+'); }');
end; end;
end; end;
end; end;
...@@ -5262,7 +5276,7 @@ begin ...@@ -5262,7 +5276,7 @@ begin
lCodigoClasse.WriteLine('@Id'); lCodigoClasse.WriteLine('@Id');
lCodigoClasse.WriteLine('@Column(name = "'+lClassToDBMapTicket.IdoDBMapTicket.GetIDOColumns+'")'); lCodigoClasse.WriteLine('@Column(name = "'+lClassToDBMapTicket.IdoDBMapTicket.GetIDOColumns+'")');
lCodigoClasse.WriteLine('@GeneratedValue(generator = "'+lsNomeGeneratorId+'")'); lCodigoClasse.WriteLine('@GeneratedValue(generator = "'+lsNomeGeneratorId+'")');
lCodigoClasse.WriteLine('private '+_DBTipoId+' '+_NomeId+';'); EscreverDeclaracaoAtributo(lCodigoClasse, _DBTipoId, _NomeId, lClassTicket.HasDescendants);
end; end;
// DECLARAO ATRIBUTOS: Percorre atributos da classe // DECLARAO ATRIBUTOS: Percorre atributos da classe
...@@ -5276,7 +5290,7 @@ begin ...@@ -5276,7 +5290,7 @@ begin
if lAttributeTicket.DBType = 'VARCHAR' if lAttributeTicket.DBType = 'VARCHAR'
then lCodigoClasse.WriteLine('@Column(name = "' + lColumnTicket.ColumnName + '", length = ' + IntToStr(lAttributeTicket.VarSize) + ')') then lCodigoClasse.WriteLine('@Column(name = "' + lColumnTicket.ColumnName + '", length = ' + IntToStr(lAttributeTicket.VarSize) + ')')
else lCodigoClasse.WriteLine('@Column(name = "' + lColumnTicket.ColumnName + '")'); else lCodigoClasse.WriteLine('@Column(name = "' + lColumnTicket.ColumnName + '")');
lCodigoClasse.WriteLine('private ' + lsTipoAttribute + ' ' + lsAtributo + ';'); EscreverDeclaracaoAtributo(lCodigoClasse, lsTipoAttribute, lsAtributo, lClassTicket.HasDescendants);
end; end;
// DECLARAO ATRIBUTOS: Percorre relacionamentos // DECLARAO ATRIBUTOS: Percorre relacionamentos
for index := 0 to lClassTicket.RelationTicketsIn.Count - 1 do for index := 0 to lClassTicket.RelationTicketsIn.Count - 1 do
...@@ -5306,7 +5320,7 @@ begin ...@@ -5306,7 +5320,7 @@ begin
', joinColumns = { @JoinColumn(name = "'+acIndirectDBRelationMapTicket(lRelationPersistenceMapTicket).FKOrigemName+'") }'+ ', joinColumns = { @JoinColumn(name = "'+acIndirectDBRelationMapTicket(lRelationPersistenceMapTicket).FKOrigemName+'") }'+
', inverseJoinColumns = { @JoinColumn(name = "'+acIndirectDBRelationMapTicket(lRelationPersistenceMapTicket).FKDestinoName+'")'+ ', inverseJoinColumns = { @JoinColumn(name = "'+acIndirectDBRelationMapTicket(lRelationPersistenceMapTicket).FKDestinoName+'")'+
'} )'); '} )');
lCodigoClasse.WriteLine('private '+lsTipoAttribute+' '+lsAtributo + ';'); EscreverDeclaracaoAtributo(lCodigoClasse, lsTipoAttribute, lsAtributo, lClassTicket.HasDescendants);
end; end;
end; end;
for index := 0 to lClassTicket.RelationTicketsOut.Count - 1 do for index := 0 to lClassTicket.RelationTicketsOut.Count - 1 do
...@@ -5343,7 +5357,7 @@ begin ...@@ -5343,7 +5357,7 @@ begin
', inverseJoinColumns = { @JoinColumn(name = "'+acIndirectDBRelationMapTicket(lRelationPersistenceMapTicket).FKOrigemName+'")'+ ', inverseJoinColumns = { @JoinColumn(name = "'+acIndirectDBRelationMapTicket(lRelationPersistenceMapTicket).FKOrigemName+'")'+
'} )'); '} )');
end; end;
lCodigoClasse.WriteLine('private '+lsTipoAttribute+' '+lsAtributo + ';'); EscreverDeclaracaoAtributo(lCodigoClasse, lsTipoAttribute, lsAtributo, lClassTicket.HasDescendants);
end; end;
end; end;
lCodigoClasse.WriteLine(''); lCodigoClasse.WriteLine('');
...@@ -5487,7 +5501,7 @@ begin ...@@ -5487,7 +5501,7 @@ begin
then lCodigoClasse.WriteLine('super(piId, ' + lListaChamadaSuper.CommaText + ');') then lCodigoClasse.WriteLine('super(piId, ' + lListaChamadaSuper.CommaText + ');')
else lCodigoClasse.WriteLine('super(piId);') else lCodigoClasse.WriteLine('super(piId);')
end end
else lCodigoClasse.WriteLine(_NomeId+' = piId;'); else lCodigoClasse.WriteLine(FirstLetterLowerCase(_NomeId)+' = piId;');
lCodigoClasse.Append(lCodigoConstrutor); lCodigoClasse.Append(lCodigoConstrutor);
lCodigoClasse.Outdent(); lCodigoClasse.Outdent();
lCodigoClasse.WriteLine('}'); lCodigoClasse.WriteLine('}');
...@@ -5501,11 +5515,11 @@ begin ...@@ -5501,11 +5515,11 @@ begin
lCodigoClasse.Indent(); lCodigoClasse.Indent();
if lEhClasseHerdada if lEhClasseHerdada
then begin then begin
if lListaChamadaSuper.Count > 0 if lListaChamadaSuperSemRelOut.Count > 0
then lCodigoClasse.WriteLine('super(piId, ' + lListaChamadaSuper.CommaText + ');') then lCodigoClasse.WriteLine('super(piId, ' + lListaChamadaSuperSemRelOut.CommaText + ');')
else lCodigoClasse.WriteLine('super(piId);') else lCodigoClasse.WriteLine('super(piId);')
end end
else lCodigoClasse.WriteLine(_NomeId+' = piId;'); else lCodigoClasse.WriteLine(FirstLetterLowerCase(_NomeId)+' = piId;');
lCodigoClasse.Append(lCodigoConstrutorSemRelOut); lCodigoClasse.Append(lCodigoConstrutorSemRelOut);
lCodigoClasse.Outdent(); lCodigoClasse.Outdent();
lCodigoClasse.WriteLine('}'); lCodigoClasse.WriteLine('}');
...@@ -5518,11 +5532,11 @@ begin ...@@ -5518,11 +5532,11 @@ begin
lCodigoClasse.Indent(); lCodigoClasse.Indent();
lCodigoClasse.WriteLine('return "'+lsNomeClasseDB+'{ " +'); lCodigoClasse.WriteLine('return "'+lsNomeClasseDB+'{ " +');
if not lEhClasseHerdada if not lEhClasseHerdada
then lCodigoClasse.WriteLine('"id="+ '+_NomeId+' + ", " +') then lCodigoClasse.WriteLine('"id="+ '+FirstLetterLowerCase(_NomeId)+' + ", " +')
else lCodigoClasse.WriteLine('"id="+ this.get'+_NomeId+'() + ", " +'); else lCodigoClasse.WriteLine('"id="+ this.get'+_NomeId+'() + ", " +');
for index := 0 to lClassTicket.Attributes.Count - 1 do for index := 0 to lClassTicket.Attributes.Count - 1 do
begin begin
lsAtributo := lClassTicket.Attributes.Strings[index]; lsAtributo := FirstLetterLowerCase(lClassTicket.Attributes.Strings[index]);
if index < lClassTicket.Attributes.Count - 1 if index < lClassTicket.Attributes.Count - 1
then lCodigoClasse.WriteLine('"'+lsAtributo+'="+ '+lsAtributo+' + ", " +') then lCodigoClasse.WriteLine('"'+lsAtributo+'="+ '+lsAtributo+' + ", " +')
else lCodigoClasse.WriteLine('"'+lsAtributo+'="+ '+lsAtributo+' +'); else lCodigoClasse.WriteLine('"'+lsAtributo+'="+ '+lsAtributo+' +');
...@@ -5555,32 +5569,35 @@ function TUtil.GerarClassPreview_JavaDomain(piClass: IUMLClass): string; ...@@ -5555,32 +5569,35 @@ function TUtil.GerarClassPreview_JavaDomain(piClass: IUMLClass): string;
else Result := piPartnerAttributeName; else Result := piPartnerAttributeName;
end; end;
procedure EscreveAtributoClasse(const piCodigoClasse: PStringWriter; const piNomeAtributo, piTipoAtributo: String; piVisibility: Integer); procedure EscreveAtributoClasse(const piCodigoClasse: PStringWriter; const piNomeAtributo, piTipoAtributo: String; piVisibility: Integer; piHasDescedents: Boolean);
begin begin
//Escreve atributo //Escreve atributo
case piVisibility of case piVisibility of
acAttributeVisibility.pvPublic : piCodigoClasse.WriteLine('public '); acAttributeVisibility.pvPublic : piCodigoClasse.WriteLine('public ');
acAttributeVisibility.pvProtected : piCodigoClasse.Write('protected '); acAttributeVisibility.pvProtected : piCodigoClasse.Write('protected ');
acAttributeVisibility.pvPrivate : piCodigoClasse.Write('private '); acAttributeVisibility.pvPrivate : if piHasDescedents then piCodigoClasse.Write('protected ') else piCodigoClasse.Write('private ');
else piCodigoClasse.Write('private '); acAttributeVisibility.pvPublished : piCodigoClasse.WriteLine('');
end; end;
piCodigoClasse.WriteLine(piTipoAtributo+' '+piNomeAtributo+';'); piCodigoClasse.WriteLine(piTipoAtributo+' '+FirstLetterLowerCase(piNomeAtributo)+';');
end; end;
procedure EscreveGetterSetterClasse(const piCodigoClasse: PStringWriter; const piNomeAtributo, piTipoAtributo: String; piApenasGetter: Boolean = False; piLista: Boolean = False); procedure EscreveGetterSetterClasse(const piCodigoClasse: PStringWriter; const piNomeAtributo, piTipoAtributo: String; piApenasGetter: Boolean = False; piLista: Boolean = False);
var
lNomeAtributo: string;
begin begin
lNomeAtributo := FirstLetterLowerCase(piNomeAtributo);
if not piLista then if not piLista then
begin begin
//Escreve getter and setter //Escreve getter and setter
piCodigoClasse.WriteLine('public ' + piTipoAtributo+' get'+piNomeAtributo+'() { return '+piNomeAtributo+'; }'); piCodigoClasse.WriteLine('public ' + piTipoAtributo+' get'+piNomeAtributo+'() { return '+lNomeAtributo+'; }');
if not piApenasGetter then if not piApenasGetter then
piCodigoClasse.WriteLine('public void set'+piNomeAtributo+'('+piTipoAtributo+' pi'+piNomeAtributo+') { '+piNomeAtributo+' = pi'+piNomeAtributo+'; }'); piCodigoClasse.WriteLine('public void set'+piNomeAtributo+'('+piTipoAtributo+' pi'+piNomeAtributo+') { '+lNomeAtributo+' = pi'+piNomeAtributo+'; }');
end end
else else
begin begin
piCodigoClasse.WriteLine('public List<' + piTipoAtributo+'> get'+piNomeAtributo+'() { return '+piNomeAtributo+'; }'); piCodigoClasse.WriteLine('public List<' + piTipoAtributo+'> get'+piNomeAtributo+'() { return '+lNomeAtributo+'; }');
piCodigoClasse.WriteLine('public void add'+piNomeAtributo+'('+piTipoAtributo+' piObject) { '+piNomeAtributo+'.add(piObject); }'); piCodigoClasse.WriteLine('public void add'+piNomeAtributo+'('+piTipoAtributo+' piObject) { '+lNomeAtributo+'.add(piObject); }');
piCodigoClasse.WriteLine('public void remove'+piNomeAtributo+'('+piTipoAtributo+' piObject) { '+piNomeAtributo+'.remove(piObject); }'); piCodigoClasse.WriteLine('public void remove'+piNomeAtributo+'('+piTipoAtributo+' piObject) { '+lNomeAtributo+'.remove(piObject); }');
end; end;
piCodigoClasse.WriteLine(''); piCodigoClasse.WriteLine('');
end; end;
...@@ -5588,19 +5605,22 @@ function TUtil.GerarClassPreview_JavaDomain(piClass: IUMLClass): string; ...@@ -5588,19 +5605,22 @@ function TUtil.GerarClassPreview_JavaDomain(piClass: IUMLClass): string;
procedure EscreverCriacaoLista(const piCodigoClasse: PStringWriter; const piNomeAtributo: String; const piMultiplicity: Integer); procedure EscreverCriacaoLista(const piCodigoClasse: PStringWriter; const piNomeAtributo: String; const piMultiplicity: Integer);
begin begin
if piMultiplicity > 1 then if piMultiplicity > 1 then
piCodigoClasse.WriteLine(piNomeAtributo + ' = new ArrayList<>();'); piCodigoClasse.WriteLine(FirstLetterLowerCase(piNomeAtributo) + ' = new ArrayList<>();');
end; end;
procedure EscreverInicializacaoAtributo(const piCodigoClasse: PStringWriter; const piNomeAtributo: String; const piMultiplicity: Integer); procedure EscreverInicializacaoAtributo(const piCodigoClasse: PStringWriter; const piNomeAtributo: String; const piMultiplicity: Integer);
var
lNomeAtributo: string;
begin begin
if (piNomeAtributo <> '') then if (piNomeAtributo <> '') then
begin begin
lNomeAtributo := FirstLetterLowerCase(piNomeAtributo);
if piMultiplicity = 1 then if piMultiplicity = 1 then
piCodigoClasse.WriteLine(piNomeAtributo + ' = pi' + piNomeAtributo + ';') piCodigoClasse.WriteLine(lNomeAtributo + ' = pi' + piNomeAtributo + ';')
else else
begin begin
EscreverCriacaoLista(piCodigoClasse, piNomeAtributo, piMultiplicity); EscreverCriacaoLista(piCodigoClasse, piNomeAtributo, piMultiplicity);
piCodigoClasse.WriteLine('if (pi'+piNomeAtributo+' != null) { '+piNomeAtributo + '.addAll(pi'+piNomeAtributo+'); }'); piCodigoClasse.WriteLine('if (pi'+piNomeAtributo+' != null) { '+lNomeAtributo + '.addAll(pi'+piNomeAtributo+'); }');
end; end;
end; end;
end; end;
...@@ -5708,7 +5728,8 @@ begin ...@@ -5708,7 +5728,8 @@ begin
lCodigoClasse.Indent(); lCodigoClasse.Indent();
// Escreve atributo id // Escreve atributo id
EscreveAtributoClasse(lCodigoClasse, _NomeId, _TipoId, acAttributeVisibility.pvPrivate); if not lEhClasseHerdada then
EscreveAtributoClasse(lCodigoClasse, _NomeId, _TipoId, acAttributeVisibility.pvPrivate, lClassTicket.HasDescendants);
// DECLARAO ATRIBUTOS: Percorre atributos da classe // DECLARAO ATRIBUTOS: Percorre atributos da classe
for index := 0 to lClassTicket.Attributes.Count - 1 do for index := 0 to lClassTicket.Attributes.Count - 1 do
begin begin
...@@ -5716,7 +5737,7 @@ begin ...@@ -5716,7 +5737,7 @@ begin
lsAtributo := lClassTicket.Attributes.Strings[index]; lsAtributo := lClassTicket.Attributes.Strings[index];
lsTipoAttribute := ObterTipoAtributoJava(lAttributeTicket.AttributeType); lsTipoAttribute := ObterTipoAtributoJava(lAttributeTicket.AttributeType);
EscreveAtributoClasse(lCodigoClasse, lsAtributo, lsTipoAttribute, lAttributeTicket.Visibility); EscreveAtributoClasse(lCodigoClasse, lsAtributo, lsTipoAttribute, lAttributeTicket.Visibility, lClassTicket.HasDescendants);
end; end;
// DECLARAO ATRIBUTOS: Percorre relacionamentos // DECLARAO ATRIBUTOS: Percorre relacionamentos
for index := 0 to lClassTicket.RelationTicketsIn.Count - 1 do for index := 0 to lClassTicket.RelationTicketsIn.Count - 1 do
...@@ -5726,7 +5747,7 @@ begin ...@@ -5726,7 +5747,7 @@ begin
if (lsAtributo <> '') then if (lsAtributo <> '') then
begin begin
lsTipoAttribute := ObterTipoAtributoRelacionamento(lRelation.DestinationMaxMultiplicity, lRelation.OriginClassTicket.DisplayName); lsTipoAttribute := ObterTipoAtributoRelacionamento(lRelation.DestinationMaxMultiplicity, lRelation.OriginClassTicket.DisplayName);
EscreveAtributoClasse(lCodigoClasse, lsAtributo, lsTipoAttribute, acAttributeVisibility.pvProtected); EscreveAtributoClasse(lCodigoClasse, lsAtributo, lsTipoAttribute, acAttributeVisibility.pvProtected, lClassTicket.HasDescendants);
end; end;
end; end;
for index := 0 to lClassTicket.RelationTicketsOut.Count - 1 do for index := 0 to lClassTicket.RelationTicketsOut.Count - 1 do
...@@ -5736,12 +5757,13 @@ begin ...@@ -5736,12 +5757,13 @@ begin
if (lsAtributo <> '') then if (lsAtributo <> '') then
begin begin
lsTipoAttribute := ObterTipoAtributoRelacionamento(lRelation.OriginMaxMultiplicity, lRelation.DestinationClassTicket.DisplayName); lsTipoAttribute := ObterTipoAtributoRelacionamento(lRelation.OriginMaxMultiplicity, lRelation.DestinationClassTicket.DisplayName);
EscreveAtributoClasse(lCodigoClasse, lsAtributo, lsTipoAttribute, acAttributeVisibility.pvProtected); EscreveAtributoClasse(lCodigoClasse, lsAtributo, lsTipoAttribute, acAttributeVisibility.pvProtected, lClassTicket.HasDescendants);
end; end;
end; end;
lCodigoClasse.WriteLine(''); lCodigoClasse.WriteLine('');
// GETTER/SETTER: Percorre relacionamentos // GETTER/SETTER: Percorre relacionamentos
if not lEhClasseHerdada then
EscreveGetterSetterClasse(lCodigoClasse, _NomeId, _TipoId, True); EscreveGetterSetterClasse(lCodigoClasse, _NomeId, _TipoId, True);
for index := 0 to lClassTicket.Attributes.Count - 1 do for index := 0 to lClassTicket.Attributes.Count - 1 do
begin begin
...@@ -5852,7 +5874,7 @@ begin ...@@ -5852,7 +5874,7 @@ begin
then lCodigoClasse.WriteLine('super(piId, ' + lListaChamadaSuper.CommaText + ');') then lCodigoClasse.WriteLine('super(piId, ' + lListaChamadaSuper.CommaText + ');')
else lCodigoClasse.WriteLine('super(piId);') else lCodigoClasse.WriteLine('super(piId);')
end end
else lCodigoClasse.WriteLine(_NomeId+' = piId;'); else lCodigoClasse.WriteLine(FirstLetterLowerCase(_NomeId)+' = piId;');
lCodigoClasse.Append(lCodigoConstrutor); lCodigoClasse.Append(lCodigoConstrutor);
lCodigoClasse.Outdent(); lCodigoClasse.Outdent();
lCodigoClasse.WriteLine('}'); lCodigoClasse.WriteLine('}');
...@@ -5866,11 +5888,11 @@ begin ...@@ -5866,11 +5888,11 @@ begin
lCodigoClasse.Indent(); lCodigoClasse.Indent();
if lEhClasseHerdada if lEhClasseHerdada
then begin then begin
if lListaChamadaSuper.Count > 0 if lListaChamadaSuperSemRelOut.Count > 0
then lCodigoClasse.WriteLine('super(piId, ' + lListaChamadaSuper.CommaText + ');') then lCodigoClasse.WriteLine('super(piId, ' + lListaChamadaSuperSemRelOut.CommaText + ');')
else lCodigoClasse.WriteLine('super(piId);') else lCodigoClasse.WriteLine('super(piId);')
end end
else lCodigoClasse.WriteLine(_NomeId+' = piId;'); else lCodigoClasse.WriteLine(FirstLetterLowerCase(_NomeId)+' = piId;');
lCodigoClasse.Append(lCodigoConstrutorSemRelOut); lCodigoClasse.Append(lCodigoConstrutorSemRelOut);
lCodigoClasse.Outdent(); lCodigoClasse.Outdent();
lCodigoClasse.WriteLine('}'); lCodigoClasse.WriteLine('}');
...@@ -5883,11 +5905,11 @@ begin ...@@ -5883,11 +5905,11 @@ begin
lCodigoClasse.Indent(); lCodigoClasse.Indent();
lCodigoClasse.WriteLine('return "'+lsNomeClasse+'{ " +'); lCodigoClasse.WriteLine('return "'+lsNomeClasse+'{ " +');
if lClassTicket.Attributes.Count > 0 if lClassTicket.Attributes.Count > 0
then lCodigoClasse.WriteLine('"id="+ '+_NomeId+' + ", " +') then lCodigoClasse.WriteLine('"id="+ '+FirstLetterLowerCase(_NomeId)+' + ", " +')
else lCodigoClasse.WriteLine('"id="+ '+_NomeId+' +'); else lCodigoClasse.WriteLine('"id="+ '+FirstLetterLowerCase(_NomeId)+' +');
for index := 0 to lClassTicket.Attributes.Count - 1 do for index := 0 to lClassTicket.Attributes.Count - 1 do
begin begin
lsAtributo := lClassTicket.Attributes.Strings[index]; lsAtributo := FirstLetterLowerCase(lClassTicket.Attributes.Strings[index]);
if index < lClassTicket.Attributes.Count - 1 if index < lClassTicket.Attributes.Count - 1
then lCodigoClasse.WriteLine('"'+lsAtributo+'="+ '+lsAtributo+' + ", " +') then lCodigoClasse.WriteLine('"'+lsAtributo+'="+ '+lsAtributo+' + ", " +')
else lCodigoClasse.WriteLine('"'+lsAtributo+'="+ '+lsAtributo+' +'); else lCodigoClasse.WriteLine('"'+lsAtributo+'="+ '+lsAtributo+' +');
......
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