Upgrade von BC14 mit vielen Tabellen

29. Juli 2022 12:57

Ich bin an einem Upgrade von einer BC14 DB nach BC18. In der DB sind sehr viele Tabellen eines AddOns enthalten (eigener Nummernbereich), sowie veschiedene indiv. Felder in Standardtabellen.

Die Felder in den Standardtabellen muss ich anscheinend entfernen, wenn ich migrieren will. Dabei muss ich natürlich die Daten daraus zwischenspeichern.

Was ist aber mit den Tabellen des AddOns? Die kann ich so lassen wie sind, oder?
In der BC18-App sind diese Tabellen und Felder 1:1 vorhanden.

Re: Upgrade von BC14 mit vielen Tabellen

29. Juli 2022 13:06

Hallo Roger,

sind die Anpassungen in BC14 in C/AL oder als AL-Extensions durchgeführt worden?
Wenn C/AL, dann kannst du für das Upgrade deiner individuellen Tabellen und Felder aus dem Kundennummernbereich an diesen "Leitfaden" halten:

https://docs.microsoft.com/en-us/dynami ... se-app-v18


Für das Upgrade des Addons müsstest du den Hersteller fragen, wie da die Daten migriert werden müssen.
Wenn die Objekte des Addon in BC14 als C/AL-Objekte vorhanden sind, bekommen die Tabellen in der SQL-Datenbank andere Namen (AppID hängt am Tabellennamen dran).
Dafür brauchst du dann einen Upgrade-Leitfaden vom Hersteller des Addons.

Re: Upgrade von BC14 mit vielen Tabellen

29. Juli 2022 13:47

Hallo Jörg

Danke für die Antwort. So ganz blicke ich leider noch nicht durch.

Das AddOn habe ich selber entwickelt und liegt bereits als AL-App vor. Macht das einen Unterschied? Ich frage vielleicht etwas doof,
aber für mich das zur Zeit alles noch nicht so transparent, wie ich das gerne hätte, liegt aber an mir.

Eigentlich möchte ich nur eine bestehende BC14 DB so migrieren, dass ich dann das AddOn dazu installieren kann.
Stelle ich mir das zu einfach vor?

Re: Upgrade von BC14 mit vielen Tabellen

29. Juli 2022 13:58

Hallo Roger,

ist das Addon auch als AL-Extension in der BC14-Datenbank?
Wenn das so ist, dann müssten in der BC14-Datenbank die Tabellen des Addons Tabellennamen inkl. AppID haben und wenn deine BC18-App dieses Addons die gleiche AppID hat, musst du für das Addon m.W. nichts machen.

Ich habe im letzten Jahr bei einem Kunden ein Upgrade von NAV2015 --> BC14 --> BC18 durchgeführt.
In dieser Datenbank waren neben individuellen Tabellen und Felder auch OPplus enthalten.
Für die OPplus-Datenmigration haben wir damals das Upgradetool von OPplus verwendet.

Re: Upgrade von BC14 mit vielen Tabellen

29. Juli 2022 14:10

Hallo Jörg

Nein, in BC14 sind nur die C/AL Objekte drin. Ich bin bis jetzt davon ausgegangen, dass die Extension dann bei der Migration nach BC18 dazukommt.

Re: Upgrade von BC14 mit vielen Tabellen

29. Juli 2022 14:43

rotsch hat geschrieben:Nein, in BC14 sind nur die C/AL Objekte drin.

Dann müssen die eigenen Felder geleert und deren Inhalte in Upgradetabellen zwischengespeichert (Codeunit 90000 UpgradeStep1) und hinterher nach Löschen der Felder mit Codeunit 90001 UpgradeStep2 in die künftigen Felder der neuen Extensiontabellen übertragen werden. Hinweise dazu hier:
https://community.dynamics.com/business/f/dynamics-365-business-central-forum/302749/how-to-move-data-to-extensions-in-business-central-from-my-physical-table-fields-in-navision-while-upgrade
Alternativ via SQL (nicht ungefährlich!):
https://www.hougaard.com/uplifting/
Automate your C/Side to AL Data transfer (Business central v14)

Re: Upgrade von BC14 mit vielen Tabellen

29. Juli 2022 14:50

Danke Kai

Dann verstehe ich das richtig, dass die Tabellen des AddOns, die in einem eigenen Nummernbereich laufen, so in der DB drin gelassen werden können?
Die stören dann nicht im Upgradeprozess?

Re: Upgrade von BC14 mit vielen Tabellen

29. Juli 2022 14:59

rotsch hat geschrieben: Tabellen des AddOns, die in einem eigenen Nummernbereich laufen, so in der DB drin gelassen werden können?

Nach der Übernahme der Feldwerte sollten die gelöscht werden. In C/AL sollte man hinterher gar nichts mehr von der alten Programmierung wiederfinden, das wandert ja alles in die "Black Box" der Extension.
Außerdem müssen alle eigenen Extensionobjekte ein dreistelliges eindeutiges eigenes Präfix bzw. Suffix haben, welches von MS vergeben wird, damit keine Namenskonflikte mit Extensions von anderen Partnern möglich sind. Es gibt ja leider keine Namespaces in AL, welche eine Trennung auf anderem Wege ermöglichen würden.
https://docs.microsoft.com/de-de/dynamics-nav/compliance/apptest-prefix-suffix
Adresse zur Vergabe: d365val@microsoft.com

Re: Upgrade von BC14 mit vielen Tabellen

29. Juli 2022 15:03

Das mit den Feldwerten leuchtet mir ein, Standardtabellen sollen ja keine fremden Felder mehr enthalten.
Eine Suffix habe ich bereits, das ist auch kein Problem.

Mein Frage zielte auf die Tabellen des AddOns ab, also jene im 3'000'00er Bereich, die für das AddOn reserviert sind.
Diese Tabellen können in der BC14 DB bleiben wie sie sind für das Upgrade, richtig?

Re: Upgrade von BC14 mit vielen Tabellen

29. Juli 2022 15:25

rotsch hat geschrieben:Diese Tabellen können in der BC14 DB bleiben wie sie sind für das Upgrade, richtig?

Nur bis zur Übernahme der Feldwerte, danach werden die entfernt wie alle anderen Objekte auch, die in die Extension wandern. In C/SIDE darf nichts mehr von dem alten AddOn sichtbar sein.

Älterer Artikel dazu: Upgrading to 15.x from 14.x C/AL – our NAV TechDays 2019 demo

Re: Upgrade von BC14 mit vielen Tabellen

29. Juli 2022 15:39

Ich glaub, ich bin zu doof dafür :-(

In der DB sind viele Dutzend Tabellen drin in einem reservierten Nummernbereich (keine Standardtabellen).
Wenn ich die lösche, gehen ja die Daten verloren. Dann muss ich für jede dieser Tabellen eine Backuptabelle erstellen um die Daten zu sichern?
Aber die müsste ich ja auch in C/SIDE erstellen?

Re: Upgrade von BC14 mit vielen Tabellen

29. Juli 2022 16:03

rotsch hat geschrieben:. Dann muss ich für jede dieser Tabellen eine Backuptabelle erstellen um die Daten zu sichern?
Aber die müsste ich ja auch in C/SIDE erstellen?

Ja, für jede Tabelle eine Upgradetabelle namens "<Tabellenname> UPG". Die werden aber nach Datenübernahme auch alle wieder entfernt.
Hier gleicher Inhalt wie erster Link oben, aber besser lesbar:
https://github.com/Microsoft/AL/issues/1512
Und hier mit anderen Worten beschrieben und sogar von MS bestätigt.
https://github.com/Microsoft/AL/issues/1689

Re: Upgrade von BC14 mit vielen Tabellen

29. Juli 2022 16:20

Ah, ja, ich glaube jetzt verstehe ich das, besten Dank für deine Geduld :-D

Re: Upgrade von BC14 mit vielen Tabellen

7. November 2023 21:09

JRenz hat geschrieben:...

Ich habe im letzten Jahr bei einem Kunden ein Upgrade von NAV2015 --> BC14 --> BC18 durchgeführt.
In dieser Datenbank waren neben individuellen Tabellen und Felder auch OPplus enthalten.
Für die OPplus-Datenmigration haben wir damals das Upgradetool von OPplus verwendet.



Hallo JRenz,

Kannst du dich noch daran erinnern, wie du die OPplus Objekte von C/AL zu AL konvertiert hast?

Ich bin die Migrationsanleitung von Continia durchgegangen (Link: https://docs.continia.com/de-de/contini ... ion-onprem)

und hänge nun aber an dem Schritt "C/AL 2 AL (Upgrade auf eine Extension Version OnPrem)". Dort fehlt mir einfach eine detailliertere Erklärung.

Der Download des Upgrade Toolkits enthält ja lediglich fob Dateien und noch einen Konverter für die Cloud App, welche aber nicht benötigt wird.

Ich habe es so verstanden, dass ich nun die zu MS verlinkte Anleitung durchführen soll. Doch dann hätte ich ja die OPplus Objekte in eine eigene Extension konvertiert. Das heisst doch dann aber auch, dass meine Extension überhaupt nichts mit der offiziellen OPplus App zu tun hat. Wie soll denn die offizielle App dann die OPplus Daten finden können? Geschweige denn, wie soll ich denn die App installieren können, wenn die Feld-Ids bereits mit meiner Extension belegt sind?

Muss ich dann meine eigene Extension nach erfolgreicher Konvertierung zu AL wieder löschen, aber die Daten behalten und kann dann die OPplus App installieren? Wobei das ja auch nicht funktionieren kann, denn meine Extension hätte ja eine ganz andere ID als die offizielle OPplus App. Muss ich also meine Extension mit der ID der OPplus App versehen??

Ich habe kaum Erfahrung mit AL und stehe diesbezüglich gerade auf dem Schlauch.

Ist es vielleicht am Ende doch einfacher als ich denke und ich habe einfach etwas übersehen?

Mir geht es hauptsächlich darum die OPplus Daten aus einer alten NAV Version zu Dynamics 356 BC mitzunehmen.

Re: Upgrade von BC14 mit vielen Tabellen

8. November 2023 14:58

Raik Zobel hat geschrieben:Ich habe kaum Erfahrung mit AL und stehe diesbezüglich gerade auf dem Schlauch.

Als Partner kann man diesen Weg wählen:
E-Mail: opplus-support@continia.com
Telefon: +49 40 877 09 400