Hier die ersten News zu VFP 9 frisch aus der Keynote. Einige Zeilen sind noch in Englisch, weil ich die einfach von den Slides abgetippt habe.
SQL Server Kompatibilität - SQL Spracherweiterungen * Select more than 9 joins * Multiple nested queries * No limit on joins * No limit to subqueries * No limit to UNIONs * No limit to the number of tables * No limit to IN() arguments * Allow multiply subquery nesting ´ * Allow GROUP BY in correlated subquery (group by inside) * Allow SUB-SELECT in FROM clause * Allow TOP N/ORDER BY for non-correlated subquery * Allow subquery in select list (projection) * Allow order by using field names with union clause * Optimize LIKE "sometext%" performance * Optimize top n performance * Allow union in insert into … select * Allow subqueries in update set list * Support for correlated update * Correlated delete * Rushmore optimization for DELETED() tag (BINARY index) - Neue Datentypen * Varbinary * Varchar (macht ein automatisches RTRIM()) * blob - TableUpdate liest automatisch bestimmte Felder neu ein - Oca.RecordRefresh() liest manuell die Felder neu ein. - Cast() Funktion * z.B. SELECT CAST(Feld as M) FROM... - SQLEXEC() hat einen vierten Arrayparameter, der die Datensatzzahl für jeden Befehl und
die Ergebnistabellen enthält, wenn mehr als ein Befehl auf einmal übertragen wird.
.NET and XML Interoperability - XML Doc Support - Extend XSD Schema support - Output hierarchial xml - Allow XPath scripting in XMLName property
Developer Productivity - Enhanced system cabapility * Arrays > 65 K * >128 levels of DO nesting - Property sheet extension - Intellisense * With…Endwith * Available in memo fields and at runtime - ICASE() Funktion - Background compile current line
Oberflächenverbesserungen - Checkbox unterstützt Word-Wrap - Button image positioning - Listbox RowSource for collection - Docking forms - Anchoring erlaubt automatisches Resize von Objekten ohne Code - "..." Knopf im Propertyfenster kann eigenen Code aufrufen, für jedes Property separat. - Text auf Button kann links/zentriert/rechts orientiert sein - Commandbutton: Abstand zwischen Text und Bild kann eingestellt werden - Hotkey für Commandbutton mit Bild (PicturePosition = 14, no text) - Alignment für checkboxes, wordwrap - Scrollbar in listbox optional. Wenn nicht genug Einträge vorhanden sind, wird sie
automatisch ausgeblendet - Collections in Listbox und Combobox - Beim Label kann gesteuert werden, wie es über Shapes erscheint (durchscheinend, deckend,
etc) - Mauscursor kann für das gesamte Grid gesteuert werden - Rotation von Label und Shape - Dockable Eigenschaft (0,1,2) bei Formularen erlaubt Docken aller Formulare - PolyPoints erlaubt beliebige Polygone bei Shapes und Lines - Lines erlauben LineSlant="S". Es entstehen Beziér Kurven.
Report Writer Enhancements - Protect existing FRX investments - Open architecture - Better reuse story - Design-time improvements - Access to report objects at runtime - Object oriented syntax - More flexibility with report chaining - New output types (e.g. XML/HTML) (AFP Dokument) - Report processing events - Zoomfunktion in preview - Font ´Property kann über einen einzigen Dialog geändert werden - Detail Header/Footer - Mehrere Detail Bereiche (zwei one-to-many) (up to 20) - Target Alias bestimmt SKIP Befehl - Zwei Detailbereich mit der gleichen Tabelle in verschiedenen Bands * Eine Rechnung zeigt oben die fertigen Summen an. Diese Summe kann dann in einem späteren Detailbereich genutzt werden, um prozentuale Anteile der Gesamtsumme zu berechnen. - Berichtsvariablen zurücksetzen bei Band - _REPORTBUILDER * Jeder Dialog kann durch einen eigenen Dialog ersetzt. * Builder wird als SourceCode mitgeliefert werden - Position kann fix angegeben werden - Protection (moved, edited, deleted, visible) * MODIFY REPORT test PROTECTED - Dataenvironment kann ersetzt werden im Designer - Bilder können im Hintergrund auf einer absoluten Position eingefügt werden ("Entwurf"
als Text quer über die ganze Seite) - Reporteinheit kann angepaßt werden (cm, Inch) - Skript in Font kann geändert werden (europäisch, osteuropäisch, etc) - User Feld wird nicht mehr gelöscht - Eventhooking, Event Registry erlaubt die Reaktion auf diverse Berichtsdesignerereignisse
(Doppelklick auf ein Element im Designer, etc.)
Mehrfache Detailbereiche Design-time hook Design-time protection Reportbuilder Improved zoom (10%-500%) International fontcharset - font script support Grid scale dialog - inches/centimers Design time labels Protected design mode Tooltips Better dataenvironment story _Reportbuilder, design-time events _Reportdesigner
Runtime imrpovements - Object oriented syntax - More flexiblity with report chaining - Output types (XML, HTML) - Open architecture to plug-in 3rd party output engines - Report processing events
- Erscheint zweites Halbjahr 2004 - Extramonate nach der Beta nur zu Stabilisierung (SP 1 ist also inklusive)