Wir prüfen gerade die Verwendung von IRepository. Dabei sind folgende Fragen aufgekommen:
Verzeichnisse/ Ordner
Wie kann man Verzeichnisse (Ordner) erstellen? Ich könnte mir vorstellen, dass bei einer entsprechend hohen Anzahl von Reports ohne Verzeichnisse schnell die Übersicht verloren geht. Außerdem wäre dann ein Gruppierung von Reportbausteinen oder Unterreports in separaten Verzeichnissen möglich. Haben wir etwas übersehen? Vielleicht wäre es möglich den Pfad im Namen zu kodieren (Beispiel: \verkauf\bausteine\baustein1). Dann müssten die entsprechenden FileOpenDialog im Designer natürlich diese Hierachie noch entsprechend darstellen…
Mehrere Projekte in einem Job drucken
Wenn mehrere Projekte in einem Job gedruckt werden sollen, weisen wir der AutoProjectFile-Eigenschaft die jeweiligen Repository-Item-Ids Semikolon getrennt zu. Bei der Ausführung kommt dann allerdings folgende Fehlermeldung (LL26):
Das angegebene Pfadformat wird nicht unterstützt.
bei System.Security.Permissions.FileIOPermission.EmulateFileIOPermissionChecks(String fullPath)
bei System.Security.Permissions.FileIOPermission.QuickDemand(FileIOPermissionAccess access, String fullPath, Boolean checkForDuplicates, Boolean needFullPath)
bei System.IO.FileInfo.Init(String fileName, Boolean checkHost)
bei System.IO.FileInfo..ctor(String fileName)
bei combit.Reporting.LlCore.LlPrintWithBoxStart(LlProject projectType, String projectFile, LlPrintMode printMode, LlBoxType boxType, IntPtr windowHandle, String title)
bei combit.Reporting.ListLabel.PrintReportFromRelationalDataSourceNewMode(IDataProvider dataSource, String projectFile, Boolean showFileSelect, LlPrintMode printMode, LlBoxType boxType, String dialogTitle, Boolean showPrintOptions, String tempPath)
bei combit.Reporting.ListLabel.AutoPrint(LlProject projectType, String projectFile, Boolean showFileSelect, LlPrintMode printMode, LlBoxType boxType, String dialogTitle, Boolean showPrintOptions, String tempPath)
bei combit.Reporting.ListLabel.Print(Object userData, LlProject projectType, String projectFile, Boolean showFileSelect, LlPrintMode printMode, LlBoxType boxType, IntPtr windowHandle, String dialogTitle, Boolean showPrintOptions, String tempPath)
bei combit.Reporting.ListLabel.Print(LlProject projectType, String projectFile, Boolean showFileSelect, LlPrintMode printMode)
bei combit.Reporting.ListLabel.Print(LlProject projectType, String projectFile, Boolean showFileSelect)
bei combit.Reporting.ListLabel.Print(LlProject projectType)
bei combit.Reporting.ListLabel.Print()
bei Diacom.TN.Client.Dialog.Development.TestDialog.TestDialogHf.mBtnReportTest_Click(Object sender, EventArgs e)
bei System.Windows.Forms.Control.OnClick(EventArgs e)
bei System.Windows.Forms.Button.OnClick(EventArgs e)
bei System.Windows.Forms.Button.OnMouseUp(MouseEventArgs mevent)
bei System.Windows.Forms.Control.WmMouseUp(Message& m, MouseButtons button, Int32 clicks)
bei System.Windows.Forms.Control.WndProc(Message& m)
bei System.Windows.Forms.ButtonBase.WndProc(Message& m)
bei System.Windows.Forms.Button.WndProc(Message& m)
bei System.Windows.Forms.Control.ControlNativeWindow.OnMessage(Message& m)
bei System.Windows.Forms.Control.ControlNativeWindow.WndProc(Message& m)
bei System.Windows.Forms.NativeWindow.DebuggableCallback(IntPtr hWnd, Int32 msg, IntPtr wparam, IntPtr lparam)
bei System.Windows.Forms.UnsafeNativeMethods.DispatchMessageW(MSG& msg)
bei System.Windows.Forms.Application.ComponentManager.System.Windows.Forms.UnsafeNativeMethods.IMsoComponentManager.FPushMessageLoop(IntPtr dwComponentID, Int32 reason, Int32 pvLoopData)
bei System.Windows.Forms.Application.ThreadContext.RunMessageLoopInner(Int32 reason, ApplicationContext context)
bei System.Windows.Forms.Application.ThreadContext.RunMessageLoop(Int32 reason, ApplicationContext context)
bei System.Windows.Forms.Application.DoEvents()
bei Diacom.TN.Client.Service.DialogService.DialogBaseShowDialog(DialogBase pDialogBase)
Haben wir etwas vergessen oder ist das noch ein Bug?
Drawing(Path) - Funktion
Diese Funktion erstellt eine Grafik aus dem angegebenen Pfad. Hierbei wird scheinbar auf das echte Filesystem zugegriffen. Das finde ich auch gut, da so Grafiken, die auf einem Netzlaufwerk liegen (z.B. Artikelbilder) dynamisch referenziert werden können. Dennoch wäre es wahrscheinlich auch sinnvoll, das ganze zusätzlich (vielleicht über einen optionalen Parameter) auch auf das Repository (per Name) zugreifen zu lassen, um dort auch dynamisch Bilder auswählen zu können.
Ist das denkbar?
Was habt ihr so für Erfahrungen mit dem IRepository gemacht?