AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Projekte DevProject Manager (Projektverwaltung) 1.7.8
Thema durchsuchen
Ansicht
Themen-Optionen

DevProject Manager (Projektverwaltung) 1.7.8

Ein Thema von Gaijin · begonnen am 9. Mai 2006 · letzter Beitrag vom 30. Jun 2014
 
Gaijin

Registriert seit: 6. Sep 2005
Ort: Österreich
570 Beiträge
 
#11

Re: DevProject Manager (Projektverwaltung) 1.3.5

  Alt 6. Okt 2006, 07:55
Zitat von xZise:
Kann das denn so gehen?
Bei der Suche nach bereits vorhandenen Versionen verwendest du die falsche Variable (i statt j):
Delphi-Quellcode:
for j := 0 to High(Data.Versions) do
        if Data.Versions[j].Version = sVersion then
          VersionExists := j;
Überprüfe bitte auch, ob "PluginInfo.Notify.ChangelogCreated" auf True gesetzt ist.

Ich habe es mit folgendem Code getestet, wobei die erste Meldung die Anzahl der ToDo-Einträge anzeigt, und die zweite den obersten Wert des Array für die unterschiedlichen Versionen.
Delphi-Quellcode:
function TMyPlugin.ExecChangelogCreated(): Boolean;
type
  TCLList = record
    Version : String;
    ChangeType : Array of String;
    ChangeLog : Array of String;
  end;
var
  sVersion, sField: String;
  i, j, iVer: Integer;
  aCL: array of TCLList;
begin
  Result := False;
  App.GetTable(PChar('SELECT * FROM todo WHERE projectid = ' + IntToStr(App.GetProjectId) + ';'));

  showmessage(inttostr(App.TableCount));

  for i := 1 to App.TableCount do begin
    sVersion := App.FieldByName('version');
    iVer := -1;
    for j := 0 to High(aCL) do
      if (aCL[j].Version = sVersion) then iVer := j;
    if (iVer = -1) then begin
      SetLength(aCL, Length(aCL) + 1);
      iVer := High(aCL);
      aCL[iVer].Version := sVersion;
    end;
    SetLength(aCL[iVer].ChangeType, Length(aCL[iVer].ChangeType) + 1);
    aCL[iVer].ChangeType[High(aCL[iVer].ChangeType)] := App.FieldByName('type');
    SetLength(aCL[iVer].ChangeLog, Length(aCL[iVer].ChangeLog) + 1);
    if (Trim(App.FieldByName('changelog')) = '') then
      sField := 'description'
    else
      sField := 'changelog';
    aCL[iVer].ChangeType[High(aCL[iVer].ChangeType)] := App.FieldByName(sField);
    App.TableNext;
  end;

  showmessage(inttostr(high(aCL)));
end;
MfG
Gaijin
Gaijin.at
  Mit Zitat antworten Zitat
 


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 11:57 Uhr.
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz