generated from microsoft/AL-Go-PTE
-
Notifications
You must be signed in to change notification settings - Fork 18
/
NormalUpgradeWPT.Codeunit.al
65 lines (54 loc) · 1.82 KB
/
NormalUpgradeWPT.Codeunit.al
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
#pragma warning disable AA0136
codeunit 62295 "Normal Upgrade WPT"
{
Subtype = Upgrade;
trigger OnUpgradePerCompany()
var
UpgradeTag: Codeunit "Upgrade Tag";
begin
if UpgradeTag.HasUpgradeTag(NormalupgradeLbl) then exit;
PerformUpgrade();
UpgradeTag.SetUpgradeTag(NormalupgradeLbl);
end;
local procedure PerformUpgrade()
begin
exit; //Prevent to run this codeunit
ClassicCopyFields();
ClassicCopyRows();
end;
procedure ClassicCopyFields()
var
Source: Record "Table With Obsolete Fields WPT";
Target: Record "Table With New Fields WPT";
begin
if Source.FindSet() then
repeat
Target.get(Source."Entry No.");
Target.Message := Source.Message;
Target."Message 2" := Source."Message 2";
Target.Modify();
until Source.Next() < 1;
end;
procedure ClassicCopyRows()
var
Source: Record "Obsolete Table WPT";
Target: Record "New Table WPT";
begin
Target.DeleteAll(); // Obviously - don't do this in realy upgrade code ;-)
if Source.FindSet() then
repeat
Target."Entry No." := Source."Entry No.";
Target.Message := Source.Message;
Target."Message 2" := Source."Message 2";
//...
Target.Insert();
until Source.Next() < 1;
end;
[EventSubscriber(ObjectType::Codeunit, Codeunit::"Upgrade Tag", 'OnGetPerCompanyUpgradeTags', '', false, false)]
local procedure OnGetPerCompanyUpgradeTags(var PerCompanyUpgradeTags: List of [Code[250]]);
begin
PerCompanyUpgradeTags.Add(NormalupgradeLbl);
end;
var
NormalupgradeLbl: Label 'waldo-Normalupgrade-20221213', Locked = true;
}