Skip to content

Commit dc11fa2

Browse files
committed
Updates after review
1 parent c02c463 commit dc11fa2

File tree

6 files changed

+75
-65
lines changed

6 files changed

+75
-65
lines changed

Apps/W1/DynamicsGPHistoricalData/app/src/Pages/HistInventoryTrx.Page.al

+1-1
Original file line numberDiff line numberDiff line change
@@ -103,7 +103,7 @@ page 41010 "Hist. Inventory Trx."
103103
HistGenJournalLines: Page "Hist. Gen. Journal Lines";
104104
begin
105105
HistGenJournalLines.SetFilterOriginatingTrxSourceNo(Rec."Audit Code");
106-
HistGenJournalLines.RunModal();
106+
HistGenJournalLines.Run();
107107
end;
108108
}
109109
}

Apps/W1/DynamicsGPHistoricalData/app/src/Pages/HistPayablesDocument.Page.al

+1-1
Original file line numberDiff line numberDiff line change
@@ -217,7 +217,7 @@ page 41008 "Hist. Payables Document"
217217
HistGenJournalLines: Page "Hist. Gen. Journal Lines";
218218
begin
219219
HistGenJournalLines.SetFilterOriginatingTrxSourceNo(Rec."Audit Code");
220-
HistGenJournalLines.RunModal();
220+
HistGenJournalLines.Run();
221221
end;
222222
}
223223
}

Apps/W1/DynamicsGPHistoricalData/app/src/Pages/HistPurchaseRecv.Page.al

+1-1
Original file line numberDiff line numberDiff line change
@@ -203,7 +203,7 @@ page 41013 "Hist. Purchase Recv."
203203
HistGenJournalLines: Page "Hist. Gen. Journal Lines";
204204
begin
205205
HistGenJournalLines.SetFilterOriginatingTrxSourceNo(Rec."Audit Code");
206-
HistGenJournalLines.RunModal();
206+
HistGenJournalLines.Run();
207207
end;
208208
}
209209
}

Apps/W1/DynamicsGPHistoricalData/app/src/Pages/HistReceivablesDocument.Page.al

+1-1
Original file line numberDiff line numberDiff line change
@@ -207,7 +207,7 @@ page 41006 "Hist. Receivables Document"
207207
HistGenJournalLines: Page "Hist. Gen. Journal Lines";
208208
begin
209209
HistGenJournalLines.SetFilterOriginatingTrxSourceNo(Rec."Audit Code");
210-
HistGenJournalLines.RunModal();
210+
HistGenJournalLines.Run();
211211
end;
212212
}
213213
}

Apps/W1/DynamicsGPHistoricalData/app/src/Pages/HistSalesTrx.Page.al

+1-1
Original file line numberDiff line numberDiff line change
@@ -217,7 +217,7 @@ page 41007 "Hist. Sales Trx."
217217
HistGenJournalLines: Page "Hist. Gen. Journal Lines";
218218
begin
219219
HistGenJournalLines.SetFilterOriginatingTrxSourceNo(Rec."Audit Code");
220-
HistGenJournalLines.RunModal();
220+
HistGenJournalLines.Run();
221221
end;
222222
}
223223
}

Apps/W1/HybridGP/test/src/GPItemTests.codeunit.al

+70-60
Original file line numberDiff line numberDiff line change
@@ -12,6 +12,17 @@ codeunit 139662 "GP Item Tests"
1212
ItemDataMigrationFacade: Codeunit "Item Data Migration Facade";
1313
GPItemMigrator: Codeunit "GP Item Migrator";
1414
GPTestHelperFunctions: Codeunit "GP Test Helper Functions";
15+
ItemNoSashBrshTok: Label '1 1/2\"SASH BRSH', Locked = true;
16+
ItemNoStepLadderTok: Label '4'' STEPLADDER', Locked = true;
17+
ItemNoKitComponentInvTok: Label 'KIT COMPONENT INV', Locked = true;
18+
ItemNoKitComponentSvcTok: Label 'KIT COMPONENT SVC', Locked = true;
19+
ItemNoKitTok: Label 'KIT', Locked = true;
20+
ItemNo12345ITEMNUMBERTok: Label '12345ITEMNUMBER!@#$%', Locked = true;
21+
ItemNumberItemInactiveTok: Label 'ITEM INACTIVE', Locked = true;
22+
ItemNoItemDiscontinuedTok: Label 'ITEM DISCONTINUED', Locked = true;
23+
ItemClassesIdTest1Tok: Label 'TEST-1', Locked = true;
24+
ItemClassIdTest2Tok: Label 'TEST-2', Locked = true;
25+
PostingGroupGPTok: Label 'GP', Locked = true;
1526

1627
[Test]
1728
[TransactionModel(TransactionModel::AutoRollback)]
@@ -50,11 +61,10 @@ codeunit 139662 "GP Item Tests"
5061
HelperFunctions.CreatePostMigrationData();
5162

5263
// [THEN] An Item is created for all configured staging table entries
53-
Assert.RecordCount(Item, 7);
5464
Assert.AreEqual(Item.Count(), HelperFunctions.GetNumberOfItems(), 'Wrong number of Items calculated');
5565

5666
// [THEN] Items are created with correct settings
57-
GPItem.Get('1 1/2\"SASH BRSH');
67+
GPItem.Get(ItemNoSashBrshTok);
5868
Item.Get(GPItem.No);
5969
Assert.AreEqual(GPItem.No, Item."No.", 'Item No. not set');
6070
Assert.AreEqual(0.00, Item."Unit Price", 'Unit Price set');
@@ -67,7 +77,7 @@ codeunit 139662 "GP Item Tests"
6777
Assert.AreEqual(GPItem.SearchDescription, Item."Search Description", 'Search Description not set.');
6878
Assert.AreEqual(GPItem.PurchUnitOfMeasure, Item."Purch. Unit of Measure", 'Purch. Unit of Measure not set.');
6979

70-
GPItem.Get('4'' STEPLADDER');
80+
GPItem.Get(ItemNoStepLadderTok);
7181
Item.Get(GPItem.No);
7282
Assert.AreEqual(GPItem.No, Item."No.", 'Item No. not set');
7383
Assert.AreEqual(0.00, Item."Unit Price", 'Unit Price set');
@@ -147,7 +157,7 @@ codeunit 139662 "GP Item Tests"
147157
until GPItem.Next() = 0;
148158

149159
// [then] Then the Inventory Posting Groups will NOT be migrated
150-
InventoryPostingGroup.SetFilter("Code", '%1|%2', 'TEST-1', 'TEST-2');
160+
InventoryPostingGroup.SetFilter("Code", '%1|%2', ItemClassesIdTest1Tok, ItemClassIdTest2Tok);
151161
Assert.RecordCount(InventoryPostingGroup, 0);
152162
end;
153163

@@ -180,43 +190,43 @@ codeunit 139662 "GP Item Tests"
180190
Assert.RecordCount(GPIV00101, 8);
181191
Assert.RecordCount(GPIV40400, 2);
182192

183-
Assert.IsTrue(GPIV00101.Get('1 1/2\"SASH BRSH'), 'Could not locate item.');
184-
Assert.AreEqual('TEST-1', GPIV00101.ITMCLSCD, 'Incorrect class Id');
185-
Assert.IsTrue(GPIV40400.Get('TEST-1'), 'Could not class Id.');
193+
Assert.IsTrue(GPIV00101.Get(ItemNoSashBrshTok), 'Could not locate item.');
194+
Assert.AreEqual(ItemClassesIdTest1Tok, GPIV00101.ITMCLSCD, 'Incorrect class Id');
195+
Assert.IsTrue(GPIV40400.Get(ItemClassesIdTest1Tok), 'Could not class Id.');
186196

187197
GPItem.FindSet();
188198
repeat
189199
Migrate(GPItem);
190200
until GPItem.Next() = 0;
191201

192202
// [THEN] The Inventory Posting Groups will be migrated
193-
Item.SetFilter("No.", '%1|%2|%3', '1 1/2\"SASH BRSH', '12345ITEMNUMBER!@#$%', '4'' STEPLADDER');
203+
Item.SetFilter("No.", '%1|%2|%3', ItemNoSashBrshTok, ItemNo12345ITEMNUMBERTok, ItemNoStepLadderTok);
194204
Assert.IsFalse(Item.IsEmpty(), 'Could not find Items by code.');
195205

196-
InventoryPostingGroup.SetFilter("Code", '%1|%2|%3', 'TEST-1', 'TEST-2', 'GP');
206+
InventoryPostingGroup.SetFilter("Code", '%1|%2|%3', ItemClassesIdTest1Tok, ItemClassIdTest2Tok, PostingGroupGPTok);
197207
Assert.IsFalse(InventoryPostingGroup.IsEmpty(), 'Could not find Inventory Posting Groups by code.');
198208
Assert.RecordCount(InventoryPostingGroup, 3);
199209

200210
// [THEN] Fields for the first Inventory Posting Setup will be correct
201-
InventoryPostingSetup.SetRange("Invt. Posting Group Code", 'TEST-1');
211+
InventoryPostingSetup.SetRange("Invt. Posting Group Code", ItemClassesIdTest1Tok);
202212
Assert.IsTrue(InventoryPostingSetup.FindFirst(), 'Could not find Inventory Posting Setup by code.');
203-
Assert.AreEqual('TEST-1', InventoryPostingSetup."Invt. Posting Group Code", 'Invt. Posting Group Code of InventoryPostingSetup is incorrect.');
213+
Assert.AreEqual(ItemClassesIdTest1Tok, InventoryPostingSetup."Invt. Posting Group Code", 'Invt. Posting Group Code of InventoryPostingSetup is incorrect.');
204214
Assert.AreEqual('1', InventoryPostingSetup."Inventory Account", 'Inventory Account of InventoryPostingSetup is incorrect.');
205215

206-
InventoryPostingSetup.SetRange("Invt. Posting Group Code", 'TEST-2');
216+
InventoryPostingSetup.SetRange("Invt. Posting Group Code", ItemClassIdTest2Tok);
207217
Assert.IsTrue(InventoryPostingSetup.FindFirst(), 'Could not find Inventory Posting Setup by code.');
208-
Assert.AreEqual('TEST-2', InventoryPostingSetup."Invt. Posting Group Code", 'Invt. Posting Group Code of InventoryPostingSetup is incorrect.');
218+
Assert.AreEqual(ItemClassIdTest2Tok, InventoryPostingSetup."Invt. Posting Group Code", 'Invt. Posting Group Code of InventoryPostingSetup is incorrect.');
209219
Assert.AreEqual('', InventoryPostingSetup."Inventory Account", 'Inventory Account of InventoryPostingSetup is incorrect.');
210220

211221
// [THEN] The correct Inventory Posting Groups are set
212-
Item.Get('1 1/2\"SASH BRSH');
213-
Assert.AreEqual('TEST-1', Item."Inventory Posting Group", 'Inventory Posting Group of migrated Item is incorrect.');
222+
Item.Get(ItemNoSashBrshTok);
223+
Assert.AreEqual(ItemClassesIdTest1Tok, Item."Inventory Posting Group", 'Inventory Posting Group of migrated Item is incorrect.');
214224

215-
Item.Get('12345ITEMNUMBER!@#$%');
216-
Assert.AreEqual('TEST-1', Item."Inventory Posting Group", 'Inventory Posting Group of migrated Item is incorrect.');
225+
Item.Get(ItemNo12345ITEMNUMBERTok);
226+
Assert.AreEqual(ItemClassesIdTest1Tok, Item."Inventory Posting Group", 'Inventory Posting Group of migrated Item is incorrect.');
217227

218-
Item.Get('4'' STEPLADDER');
219-
Assert.AreEqual('TEST-2', Item."Inventory Posting Group", 'Inventory Posting Group of migrated Item is incorrect.');
228+
Item.Get(ItemNoStepLadderTok);
229+
Assert.AreEqual(ItemClassIdTest2Tok, Item."Inventory Posting Group", 'Inventory Posting Group of migrated Item is incorrect.');
220230
end;
221231

222232
[Test]
@@ -259,7 +269,7 @@ codeunit 139662 "GP Item Tests"
259269

260270
// [THEN] Inactive items will not be migrated
261271
Assert.IsTrue(Item.Count() > 0, 'Items were not migrated.');
262-
Item.SetRange("No.", 'ITEM INACTIVE');
272+
Item.SetRange("No.", ItemNumberItemInactiveTok);
263273
Assert.IsTrue(Item.IsEmpty(), 'Inactive item should not have been migrated.');
264274
end;
265275

@@ -303,10 +313,10 @@ codeunit 139662 "GP Item Tests"
303313

304314
// [THEN] Discontinued items will not be migrated
305315
Assert.IsTrue(Item.Count() > 0, 'Items were not migrated.');
306-
Item.SetRange("No.", 'ITEM INACTIVE');
316+
Item.SetRange("No.", ItemNumberItemInactiveTok);
307317
Assert.IsTrue(Item.FindFirst(), 'Inactive item should have been migrated.');
308318

309-
Item.SetRange("No.", 'ITEM DISCONTINUED');
319+
Item.SetRange("No.", ItemNoItemDiscontinuedTok);
310320
Assert.IsTrue(Item.IsEmpty(), 'Discontinued item should have been migrated.');
311321
end;
312322

@@ -351,25 +361,25 @@ codeunit 139662 "GP Item Tests"
351361
Assert.RecordCount(Item, 8);
352362
Assert.AreEqual(Item.Count(), HelperFunctions.GetNumberOfItems(), 'Wrong number of Items calculated');
353363

354-
Item.Get('KIT COMPONENT INV');
364+
Item.Get(ItemNoKitComponentInvTok);
355365
Assert.AreEqual(Item.Type::Inventory, Item.Type, 'Type is incorrect (INV).');
356366

357-
Item.Get('KIT COMPONENT SVC');
367+
Item.Get(ItemNoKitComponentSvcTok);
358368
Assert.AreEqual(Item.Type::"Non-Inventory", Item.Type, 'Type is incorrect (SVC).');
359369

360370
// [THEN] Kit item components are created with correct settings
361-
BOMComponent.SetRange("Parent Item No.", 'KIT');
371+
BOMComponent.SetRange("Parent Item No.", ItemNoKitTok);
362372
Assert.RecordCount(BOMComponent, 2);
363373

364-
BOMComponent.SetRange("No.", 'KIT COMPONENT INV');
374+
BOMComponent.SetRange("No.", ItemNoKitComponentInvTok);
365375
BOMComponent.FindFirst();
366376
Assert.AreEqual(10000, BOMComponent."Line No.", 'Line No. is incorrect');
367377
Assert.AreEqual(BOMComponent.Type::Item, BOMComponent.Type, 'Type is incorrect.');
368378
Assert.AreEqual('Kit Component Inventory', BOMComponent.Description, 'Description is incorrect.');
369379
Assert.AreEqual('EACH', BOMComponent."Unit of Measure Code", 'Unit of Measure Code is incorrect.');
370380
Assert.AreEqual(1, BOMComponent."Quantity per", 'Quantity per is incorrect.');
371381

372-
BOMComponent.SetRange("No.", 'KIT COMPONENT SVC');
382+
BOMComponent.SetRange("No.", ItemNoKitComponentSvcTok);
373383
BOMComponent.FindFirst();
374384
Assert.AreEqual(20000, BOMComponent."Line No.", 'Line No. is incorrect');
375385
Assert.AreEqual(BOMComponent.Type::Item, BOMComponent.Type, 'Type is incorrect.');
@@ -396,8 +406,8 @@ codeunit 139662 "GP Item Tests"
396406
GPIV40400.DeleteAll();
397407
DataMigrationEntity.DeleteAll();
398408

399-
if not GenBusPostingGroup.Get('GP') then begin
400-
GenBusPostingGroup.Validate(GenBusPostingGroup.Code, 'GP');
409+
if not GenBusPostingGroup.Get(PostingGroupGPTok) then begin
410+
GenBusPostingGroup.Validate(GenBusPostingGroup.Code, PostingGroupGPTok);
401411
GenBusPostingGroup.Insert(true);
402412
end;
403413
end;
@@ -417,10 +427,10 @@ codeunit 139662 "GP Item Tests"
417427
GPIV00104: Record "GP IV00104";
418428
begin
419429
Clear(GPItem);
420-
GPItem.No := '1 1/2\"SASH BRSH';
421-
GPItem.Description := '1 1/2\"SASH BRSH';
430+
GPItem.No := ItemNoSashBrshTok;
431+
GPItem.Description := ItemNoSashBrshTok;
422432
GPItem.SearchDescription := 'Craftsman Brush 1 1/2\" Sash';
423-
GPItem.ShortName := '1 1/2\"SASH BRSH';
433+
GPItem.ShortName := ItemNoSashBrshTok;
424434
GPItem.BaseUnitOfMeasure := 'Each';
425435
GPItem.ItemType := 0;
426436
GPItem.CostingMethod := '0';
@@ -435,7 +445,7 @@ codeunit 139662 "GP Item Tests"
435445
GPItem.Insert();
436446

437447
Clear(GPItem);
438-
GPItem.No := '12345ITEMNUMBER!@#$%';
448+
GPItem.No := ItemNo12345ITEMNUMBERTok;
439449
GPItem.Description := '12345ITEMNUMBER!@#$%1234567890';
440450
GPItem.SearchDescription := 'Item Description !@#123456789012345678901234567890';
441451
GPItem.ShortName := '12345ITEMNUMBER!@#$%1234567890';
@@ -453,10 +463,10 @@ codeunit 139662 "GP Item Tests"
453463
GPItem.Insert();
454464

455465
Clear(GPItem);
456-
GPItem.No := '4'' STEPLADDER';
457-
GPItem.Description := '4'' STEPLADDER';
458-
GPItem.SearchDescription := '4'' Stepladder';
459-
GPItem.ShortName := '4'' STEPLADDER';
466+
GPItem.No := ItemNoStepLadderTok;
467+
GPItem.Description := ItemNoStepLadderTok;
468+
GPItem.SearchDescription := ItemNoStepLadderTok;
469+
GPItem.ShortName := ItemNoStepLadderTok;
460470
GPItem.BaseUnitOfMeasure := 'Each';
461471
GPItem.ItemType := 0;
462472
GPItem.CostingMethod := '0';
@@ -471,7 +481,7 @@ codeunit 139662 "GP Item Tests"
471481
GPItem.Insert();
472482

473483
Clear(GPItem);
474-
GPItem.No := 'ITEM INACTIVE';
484+
GPItem.No := ItemNumberItemInactiveTok;
475485
GPItem.Description := 'Inactive item';
476486
GPItem.SearchDescription := 'inactive';
477487
GPItem.ShortName := 'Inactive item';
@@ -495,7 +505,7 @@ codeunit 139662 "GP Item Tests"
495505
#pragma warning restore AA0139
496506

497507
Clear(GPItem);
498-
GPItem.No := 'ITEM DISCONTINUED';
508+
GPItem.No := ItemNoItemDiscontinuedTok;
499509
GPItem.Description := 'Discontinued item';
500510
GPItem.SearchDescription := 'discontinued';
501511
GPItem.ShortName := 'Discontinued item';
@@ -520,10 +530,10 @@ codeunit 139662 "GP Item Tests"
520530

521531
// Kit and its components
522532
Clear(GPItem);
523-
GPItem.No := 'KIT';
524-
GPItem.Description := 'Kit';
525-
GPItem.SearchDescription := 'Kit';
526-
GPItem.ShortName := 'Kit';
533+
GPItem.No := ItemNoKitTok;
534+
GPItem.Description := ItemNoKitTok;
535+
GPItem.SearchDescription := ItemNoKitTok;
536+
GPItem.ShortName := ItemNoKitTok;
527537
GPItem.BaseUnitOfMeasure := 'Each';
528538
GPItem.ItemType := 2;
529539
GPItem.CostingMethod := '0';
@@ -537,12 +547,12 @@ codeunit 139662 "GP Item Tests"
537547
GPItem.Insert();
538548

539549
Clear(GPIV00101);
540-
GPIV00101.ITEMNMBR := 'KIT';
550+
GPIV00101.ITEMNMBR := ItemNoKitTok;
541551
GPIV00101.ITEMTYPE := 3;
542552
GPIV00101.Insert();
543553

544554
Clear(GPItem);
545-
GPItem.No := 'KIT COMPONENT INV';
555+
GPItem.No := ItemNoKitComponentInvTok;
546556
GPItem.Description := 'Kit Component Inventory';
547557
GPItem.SearchDescription := 'Kit component inventory';
548558
GPItem.ShortName := 'Kit Component Inventory';
@@ -559,12 +569,12 @@ codeunit 139662 "GP Item Tests"
559569
GPItem.Insert();
560570

561571
Clear(GPIV00101);
562-
GPIV00101.ITEMNMBR := 'KIT COMPONENT INV';
572+
GPIV00101.ITEMNMBR := ItemNoKitComponentInvTok;
563573
GPIV00101.ITEMTYPE := 1;
564574
GPIV00101.Insert();
565575

566576
Clear(GPItem);
567-
GPItem.No := 'KIT COMPONENT SVC';
577+
GPItem.No := ItemNoKitComponentSvcTok;
568578
GPItem.Description := 'Kit Component Service';
569579
GPItem.SearchDescription := 'Kit component service';
570580
GPItem.ShortName := 'Kit Component SVC';
@@ -581,24 +591,24 @@ codeunit 139662 "GP Item Tests"
581591
GPItem.Insert();
582592

583593
Clear(GPIV00101);
584-
GPIV00101.ITEMNMBR := 'KIT COMPONENT SVC';
594+
GPIV00101.ITEMNMBR := ItemNoKitComponentSvcTok;
585595
GPIV00101.ITEMTYPE := 5;
586596
GPIV00101.Insert();
587597

588598
Clear(GPIV00104);
589-
GPIV00104.ITEMNMBR := 'KIT';
599+
GPIV00104.ITEMNMBR := ItemNoKitTok;
590600
GPIV00104.SEQNUMBR := 1;
591-
GPIV00104.CMPTITNM := 'KIT COMPONENT INV';
601+
GPIV00104.CMPTITNM := ItemNoKitComponentInvTok;
592602
GPIV00104.CMPITUOM := 'Each';
593603
GPIV00104.CMPITQTY := 1;
594604
GPIV00104.CMPSERNM := false;
595605
GPIV00104.DEX_ROW_ID := 1;
596606
GPIV00104.Insert();
597607

598608
Clear(GPIV00104);
599-
GPIV00104.ITEMNMBR := 'KIT';
609+
GPIV00104.ITEMNMBR := ItemNoKitTok;
600610
GPIV00104.SEQNUMBR := 1;
601-
GPIV00104.CMPTITNM := 'KIT COMPONENT SVC';
611+
GPIV00104.CMPTITNM := ItemNoKitComponentSvcTok;
602612
GPIV00104.CMPITUOM := 'Each';
603613
GPIV00104.CMPITQTY := 1;
604614
GPIV00104.CMPSERNM := false;
@@ -640,30 +650,30 @@ codeunit 139662 "GP Item Tests"
640650
GLAccount.Insert();
641651

642652
GPIV40400.Init();
643-
GPIV40400.ITMCLSCD := 'TEST-1';
653+
GPIV40400.ITMCLSCD := ItemClassesIdTest1Tok;
644654
GPIV40400.ITMCLSDC := 'Test class 1';
645655
GPIV40400.IVIVINDX := 1;
646656
GPIV40400.Insert();
647657

648658
GPIV40400.Init();
649-
GPIV40400.ITMCLSCD := 'TEST-2';
659+
GPIV40400.ITMCLSCD := ItemClassIdTest2Tok;
650660
GPIV40400.ITMCLSDC := 'Test class 2';
651661
GPIV40400.IVIVINDX := 0;
652662
GPIV40400.Insert();
653663

654664
GPIV00101.Init();
655-
GPIV00101.ITEMNMBR := '1 1/2\"SASH BRSH';
656-
GPIV00101.ITMCLSCD := 'TEST-1';
665+
GPIV00101.ITEMNMBR := ItemNoSashBrshTok;
666+
GPIV00101.ITMCLSCD := ItemClassesIdTest1Tok;
657667
GPIV00101.Insert();
658668

659669
GPIV00101.Init();
660-
GPIV00101.ITEMNMBR := '12345ITEMNUMBER!@#$%';
661-
GPIV00101.ITMCLSCD := 'TEST-1';
670+
GPIV00101.ITEMNMBR := ItemNo12345ITEMNUMBERTok;
671+
GPIV00101.ITMCLSCD := ItemClassesIdTest1Tok;
662672
GPIV00101.Insert();
663673

664674
GPIV00101.Init();
665-
GPIV00101.ITEMNMBR := '4'' STEPLADDER';
666-
GPIV00101.ITMCLSCD := 'TEST-2';
675+
GPIV00101.ITEMNMBR := ItemNoStepLadderTok;
676+
GPIV00101.ITMCLSCD := ItemClassIdTest2Tok;
667677
GPIV00101.Insert();
668678
end;
669679
}

0 commit comments

Comments
 (0)