1 / 41

D-DBI Integration der DBI Controls aus Sedna in VFP am Beispiel von Visual Extend

D-DBI Integration der DBI Controls aus Sedna in VFP am Beispiel von Visual Extend. Uwe Habermann Uwe.Habermann@dFPUG.de. VFX 10.0. 11 Jahre VFX dFPUG c/o ISYS GmbH Marktführer in Europa Mehr Anwender als alle anderen Framework Hersteller zusammen

kiral
Download Presentation

D-DBI Integration der DBI Controls aus Sedna in VFP am Beispiel von Visual Extend

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. D-DBIIntegration der DBI Controls aus Sedna in VFP am Beispiel von Visual Extend Uwe Habermann Uwe.Habermann@dFPUG.de

  2. VFX 10.0 • 11 Jahre VFX • dFPUG c/o ISYS GmbH • Marktführer in Europa • Mehr Anwender als alle anderen Framework Hersteller zusammen • Einziges Framework mit vollerCursoradapter Unterstützung • Erstes Framework mit Unterstützungder DBI Sedna Components

  3. Visual Extend 10.0 • VFX 10.0 Build 1104 auf der Konferenz-CD • 4 Beispielanwendungen • VFPizza • DBI Sedna Components installieren • 20 Stunden Videos

  4. Wer ist denn das? • Uwe Habermann • Diplom-Informatiker, TU Berlin • FoxPro Entwickler seit FPW 2.5 • MCP für VFP • Visual Extend Product Manager • Freiberuflich tätig für ISYS, Wizards & Builders, ProLib, … • Uwe Habermann & Kathrin Leu GbR

  5. Sedna • VFP 9 SP 2 • DBI Sedna Components • Upsizing Wizard • Data Explorer • Sedna Reporting Features • VistaDialogs4COM • NET4COM • MY for VFP • VS 2005 Extension for VFP

  6. DBI Sedna Components • ctContact Kontaktliste wie in Outlook • ctDays Kalender Tagesansicht • ctDEdit Datums- und Zeiteingabe • ctDropMenu Rechtsklickmenü • ctFrame Hintergrund • ctListBar Navigationsbereich • ctToolBar Menü und Symbolleiste • ctTray Windows System Tray

  7. Abhängigkeiten • Kompiliert mit Microsoft Visual C++ 6.0 • MFC42.dll • MSVCRT.dll

  8. DBI Studio Controls R3 • Noch viel mehr Controls • Schon lange erhältlich • Controls sind nicht neu • Gleiche Features • Gleiche IDs

  9. Integration in VFXBeispiele in VFPizza • ctContact Kontaktliste wie in Outlook CustomersDBI.scx • ctDEdit Datums- und Zeiteingabe Orders.scx • ctDropMenu Rechtsklickmenü • ctFrame Hintergrund Customers.scx • ctListBar Navigationsbereich • ctToolBar Menü und Symbolleiste • ctTray Windows System Tray

  10. ctContact • ctContact Kontaktliste wie in Outlook • Beispiel in CustomersDBI.scx

  11. ctContact • Vfxappl.vcx - cDBIctContact • Eigenschaften • .IDFieldName = <ID Feld der Tabelle> • .NodeText = <Ausdruck für Überschrift> • .aFieldsList = <Array mit Datenbeschreibung> • .HideEmptyItems = .T.

  12. ctContact • Überschriften füllen:cDBIctContact.FillTreeView WITH this lnNewHeaderIndex = ; .oleContact.AddHeader(ALLTRIM( ; TRANSFORM(EVALUATE(.NodeText)))) .oleContact.HeaderCargo( ; lnNewHeaderIndex) = lcNodeKey ENDWITH

  13. ctContact • Datenbeschreibung füllen: CustomersDBI.scx – Init • Array enthält Beschriftungen und Feldnamen DIMENSION this.afieldslist (2,2) this.afieldslist[1,1] = 'Telefon:' this.afieldslist[1,2] = 'phone' this.afieldslist[2,1] = 'Adresse:' this.afieldslist[2,2] = 'address' this.oleContact.ColumnWidth = 184 • RETURN DODEFAULT()

  14. ctContact • Daten füllen:cDBIctContact.FillTreeView WITH this FOR i=1 TO .oleContact.TitleCount .oleContact.ItemText( ; lnNewHeaderIndex,i) = ; ALLTRIM(TRANSFORM(EVALUATE( ; .afieldslist[i,2]))) ENDFOR ENDWITH

  15. ctContact • Builder von DBI vorhanden • Kleiner Nachteil Die Überschrift kann nicht bearbeitet werden

  16. ctDays • ctDays Kalender Tagesansicht • Demo in SednaDemos • Builder von DBI vorhanden

  17. ctDEdit • ctDEdit Datums- und Zeiteingabe • Bearbeitung von Zeit- oder Datumswerten • Unterstützung aller SET Einstellungen von VFP • Beispiel in OrdersCA.scx

  18. ctDEdit • Vfxappl.vcx – cDBIctDEdit • Eigenschaften • .cControlsource = <Controlsource> <- Wichtig! • .DropButton = <z. B. Kalenderanzeige> • .SpinButton = <z. B. Tag ändern> • .FormatType = <0-2 = Datumformat oder 3 = Zeit>

  19. ctDEdit • Vfxappl.vcx – cDBIctDEdit.Init Unterstützung aller SET Einstellungen von VFP • cDBIctDEdit.ClickDropClickDrop startet Kalender • cDBIctDEdit.ClickSpin Tag ändern • Freundliches Verhalten bei Falscheingabe • Builder von DBI vorhanden

  20. ctDropMenu • ctDropMenu Rechtsklickmenü • In VFX einstellbar mit goProgram.nMenuAndToolbarStyle • 0 – VFP Menü (Standardwert) • 1 – DBI ctToolbar • VfxFormBase.vcx • Formularklasse cDBIDropMenuVFXBase

  21. ctDropMenu • Verwendung in Vfxobjbase.vcx – RightClick • Hinzufügen eines Eintrags loCtDropMenu.octDropMenu. ; Object.AddItem(lcCutText, 0, 1) • Hinzufügen eines Icons loCtDropMenu.octDropMenu. ; ItemPicture(1) = ; LOADPICTURE(lcPictureName) • Builder von DBI vorhanden

  22. ctFrame • ctFrame Hintergrund • Container Steuerelement • Anzeige von Farbverläufen • Resizable • Beispiel in Customers.scx • Builder von DBI vorhanden

  23. ctListBar • ctListBar Navigationsbereich • In VFX einstellbar mit: goProgram.nOpenDialogStyle • 0 – Öffnen Formular • 1 – XP Öffnen Dialog • 3 – DBI Öffnen Dialog

  24. ctListBar • Vfxformbase.vcx – cDBIOpenFormVFXBase • Gruppe hinzufügen (MakeGroup) lnIndex = this.oleListBar. ; addList(lcGroupCaption) • Eintrag hinzufügen (MakeItem) lnIndex = this.OleListBar. ; AddItem(lnIndex, lcCaption) • Data Driven

  25. ctListBar • Demo in Sednademos • Keine typische Anwendung • Builder von DBI vorhanden

  26. ctToolBar • ctToolBar Menü und Symbolleiste • In VFX einstellbar mit: goProgram.nMenuAndToolbarStyle • 0 – VFP Menü und Symbolleiste (Standardwert) • 1 – DBI ctToolbar

  27. ctToolBar • Menü Vfxappl.vcx – cDBIMenuBar • Symbolleiste Vfxappl.vcx – cDBINavigatorBar

  28. ctToolBar • Menü cDBIMenuBar.LoadMenu • Data Driven aus Vfxmnu.vmx gelesen

  29. ctToolBar • Menü hinzufügen (LoadMenu) lnIndex = this.octToolbar. ; AddItem(0, lcItemDescription, 0) • Menüeintrag hinzufügen (LoadDropDownMenu) lnIndex = this.octToolbar. ;AddItem(lnItemType, ; lcItemDescription, lnPicture) • Icon hinzufügen lnPicture = This.octToolbar. ; AddImage(LOADPICTURE(lcPictureName))

  30. ctToolBar • Symbolleiste cDBINavigatorBar.LoadToolbar

  31. ctToolBar • Icon hinzufügen (LoadToolbar) lnPictureIndex = This.AddPicture ; ("BITMAP\TOOLBAR\new.bmp") • Schaltfläche hinzufügen (LoadToolbar) lnButtonIndex = This.octOfficeBar. ; AddItem(0, "", lnPictureIndex)

  32. ctToolBar • Vorsicht: Beim Entfernen von Menüeinträgen oder Elementen aus der Symbolleiste, werden die IDs neu vergeben!

  33. ctToolBar • In VFX einstellbar mit: goProgram.cDBIMainToolbar • Name der Klasse mit der DBI Symbolleiste goProgram.cDBIMainMenu • Name der Klasse mit dem DBI Menü

  34. ctToolBar • Selectitem.prg für Hotkeys • VFX – Application Builder • VFX – Update Project • VFX – Menu Designer • Exe Datei erstellen • Builder von DBI vorhanden

  35. ctTray • ctTray Windows System Tray • Vfxappl.vcx – cSysTray • Init • IconClick • In VFX einstellbar mit: goProgram.lHideAppInTray

  36. ctTray • Integration in VFP Anwendungen IF _SCREEN.WindowState = 1 AND ; This.lHideAppInTray This.oSysTray = ; Createobject("cSysTray") _SCREEN.Hide() ENDIF • Builder von DBI vorhanden

  37. Demos von DBI • Demo Anwendung mit vielen Beispielen • Dokumentation in Windows Hilfedateien

  38. DBI Sedna Components • ctContact 02.2003 ctContact.hlp • ctDays 07.2003 ctDays.hlp • ctDEdit 04.2006 ctDEdit.hlp • ctDropMenu 04.2006 ctDropMenu.hlp • ctFrame 03.2006 ctFrame.hlp • ctListBar 04.2006 ctListBar.chm • ctToolBar 05.2006 ctToolbar.chm • ctTray 03.2006 ctTray.hlp

  39. Anzeige von hlp Dateien auf Windows Vista • Windows hlp Hilfesystem muss nachinstalliert werden: • http://support.microsoft.com/kb/917607

  40. Installation beim Kunden • Verwendung eines Installationsprogramms • OCXe sind „selbstregistrierend“ • Programmatische Registrierung möglich, aber nicht erforderlich

  41. Vielen Dank undviel Spaß mit Sedna! Bitte denkt an die Bewertungsbögen! Uwe Habermann

More Related