|
|||||||
| Downloads | Registrieren | Benutzerliste | Kalender | Suchen | Heutige Beiträge | Alle Foren als gelesen markieren | Hilfe |
![]() |
|
|
Themen-Optionen | Ansicht |
|
#1
|
||||
|
Die Nutzung erfolgt auf eigene Gefahr! Bitte eure Produktiv-Datenbanken SICHERN bevor Ihr diese Aktion nutzt.
Bei mir (Imabas 7.3 auf MySQL 5.1.45) läuft diese Aktion nach meinen Wünschen. Aber ich kann keine Garantie für jede beliebige Imabaskonfiguration und -Version übernehmen. Falls jemand diese Funktion ausprobiert, wäre ich an einem Feedback interessiert. 28.03.2010 Korrektur eines Bugs: das SQL-Update der Filmbezeichnung wird jetzt auf 50 Zeichen beschränkt, sonst kommts zumindest unter MySQL zu einem SQL-Fehler und Imabas hängt... Beschreibung: Diese Aktion benennt die beim Importieren automatisch erzeugten Filme um. Wenn Verzeichnisse aus dem Windows-Explorer z.B. per Drag&Drop auf ein passendes Volume im Imabas-Explorer gezogen und importiert werden, legt Imabas für jedes Verzeichnis einen Film mit der Bezeichnung "Automatisch erzeugt - TT.MM.JJJJ" an. Da bei mir diese Filme gleich in einer bestimmten Filmgruppe landen, ist ein Aufruf über diese Filmgruppe für meinen Workflow am sinnvollsten. Diese Aktion verwendet die Funktion getMostUsedParentDirFromFilmImages die den entsprechenden Verzeichnisnamen zurückliefert. Nach dem Aufruf wird ein Dialog angezeigt, der die umbenannten Filme auflistet. Ein Refresh des Filmgruppenknotens ist danach erforderlich, um die geänderten Filmbezeichnungen zu sehen! Abhängigkeiten: Funktion getMostUsedParentDirFromFilmImages Einsprungspunkt: Filmgruppe Code:
function PerformAction(ObjectKey: String): Boolean;
var
film : TIFilm;
films: TICollection;
filmGroup : TIFilmGroup;
newName,caption,prefix,info,info2 : String;
query : TIQuery;
i : Integer;
begin
filmGroup := TIFilmGroup.Create;
if filmGroup.Load(ObjectKey) then begin
films := filmGroup.Films;
info := '';
info2 := '';
ProgressWindow( films.Count );
for i := 0 to films.Count-1 do begin
caption := TIFilm(films[i]).Caption;
prefix := 'Automatisch erzeugt - ';
if Copy(caption,1,Length(prefix)) = prefix then begin
newName := getMostUsedParentDirFromFilmImages(TIFilm(films[i]).Key);
if Length(newName)>0 then begin
query := TIQuery.Create;
query.SQL := Format(
'UPDATE filme SET caption=LEFT(''%s'',50) WHERE ukey=''%s''',
[newName,TIFilm(films[i]).Key]
);
query.ExecSQL;
query.Free;
info := Format(
'%s(%.4d) "%s" in "%s"%s',
[info,TIFilm(films[i]).Nummer,caption,newName,chr(10)]
);
end else begin
info2 := Format(
'%s(%.4d) "%s"%s',
[info2,TIFilm(films[i]).Nummer,caption,chr(10)]
);
end;
end;
ProgressWindowStep;
end;
ProgressWindowHide;
if Length(info)>0 then begin
info := 'Folgende Filme wurden umbenannt:'+chr(10)+chr(10)+info;
if Length(info2)>0 then begin
info:=info+chr(10)+chr(10)+'für folgende Filme wurde kein Verzeichnisname gefunden:'+chr(10)+chr(10)+info2;
end;
Message(info);
end else begin
Message('Es wurden keine Filme mit dem Prefix '+chr(10)+''''+prefix+'...'' gefunden!');
end;
films.Free;
end else begin
Message('Die Filmgruppe konnte nicht geöffnet werden!');
end;
filmGroup.Free;
Result := True;
end;
__________________
Grüße Holger |
|||
![]() |
| Themen-Optionen | |
| Ansicht | |
|
|
Ähnliche Themen
|
||||
| Thema | Autor | Forum | Antworten | Letzter Beitrag |
| Volumes automatisch erzeugen | jdk1111 | Imabas Allgemein | 8 | 09.12.2008 13:57 |
| Volume absolut/relativ Filme automatisch | KSCEIN3 | Imabas Allgemein | 19 | 21.04.2008 08:36 |
| Sortierreihenfolge Filme | Spinat | Imabas Allgemein | 7 | 02.04.2008 14:09 |
| Volume für automatisch erstellte Filme zuweisen | DrAntiForce | Imabas im Netzwerk | 12 | 18.01.2008 09:34 |
| Attribute abhängig von Exif Daten automatisch zuordnen | bernd! | Imabas Allgemein | 3 | 28.09.2006 07:24 |