From c0502da359c9d43c7d36c2ba407a2f09085030e5 Mon Sep 17 00:00:00 2001 From: Bardur Knudsen Date: Tue, 11 Aug 2026 16:54:19 +0200 Subject: [PATCH 01/28] Added more locations --- .../CreateExpenseCategoriesDM.Codeunit.al | 10 +- .../CreateExpenseLocation.Codeunit.al | 2000 ++++++++++++++++- .../CreateExpenseRuleCondition.Codeunit.al | 258 +++ .../CreateExpenseRuleHeader.Codeunit.al | 259 +++ 4 files changed, 2515 insertions(+), 12 deletions(-) diff --git a/src/Apps/W1/ExpenseAgent/demo data/Demo Data/2.Master Data/CreateExpenseCategoriesDM.Codeunit.al b/src/Apps/W1/ExpenseAgent/demo data/Demo Data/2.Master Data/CreateExpenseCategoriesDM.Codeunit.al index 0c678fa2dbb..6c6e7aca7ee 100644 --- a/src/Apps/W1/ExpenseAgent/demo data/Demo Data/2.Master Data/CreateExpenseCategoriesDM.Codeunit.al +++ b/src/Apps/W1/ExpenseAgent/demo data/Demo Data/2.Master Data/CreateExpenseCategoriesDM.Codeunit.al @@ -11,6 +11,7 @@ codeunit 8204 "Create Expense Categories DM" trigger OnRun() var + ExpenseCategory: Record "Expense Category"; CreateExpenseGroup: Codeunit "Create Expense Group"; CreateExpensePaymentMethod: Codeunit "Create Expense Payment Method"; ContosoExpenseAgent: Codeunit "Contoso Expense Agent"; @@ -40,6 +41,8 @@ codeunit 8204 "Create Expense Categories DM" ContosoExpenseAgent.InsertExpenseCategory(Subscription(), ProfessionalSubscriptionsLbl, ProfessionalSubscriptionsPostingLbl, CreateExpensePostingGroup.ExpenseOther(), Enum::"Expense Attachment Enforcement"::Warning, CreateExpensePaymentMethod.Card(), false, false, CreateExpenseGroup.DayExpense(), true, Enum::"Expense Reimbursement Type"::"Credit Card", Enum::"Expense Detail Needed"::" "); ContosoExpenseAgent.InsertExpenseCategory(Tips(), TipsLbl, TipsPostingLbl, CreateExpensePostingGroup.ExpenseOther(), Enum::"Expense Attachment Enforcement"::" ", CreateExpensePaymentMethod.Cash(), false, false, CreateExpenseGroup.FoodBeverage(), false, Enum::"Expense Reimbursement Type"::"Employee Paid", Enum::"Expense Detail Needed"::" "); ContosoExpenseAgent.InsertExpenseCategory(Tolls(), TollRoadUsageFeeLbl, TollRoadUsageFeePostingLbl, CreateExpensePostingGroup.ExpenseOther(), Enum::"Expense Attachment Enforcement"::Warning, CreateExpensePaymentMethod.Cash(), false, false, CreateExpenseGroup.DayExpense(), true, Enum::"Expense Reimbursement Type"::"Employee Paid", Enum::"Expense Detail Needed"::" "); + if not ExpenseCategory.Get(PerDiem()) then + ContosoExpenseAgent.InsertExpenseCategory(PerDiem(), PerDiemLbl, PerDiemPostingLbl, CreateExpensePostingGroup.ExpenseTravel(), Enum::"Expense Attachment Enforcement"::" ", '', false, false, CreateExpenseGroup.Travel(), true, Enum::"Expense Reimbursement Type"::" ", Enum::"Expense Detail Needed"::" "); end; var @@ -67,6 +70,7 @@ codeunit 8204 "Create Expense Categories DM" TipsTok: Label 'TIPS', MaxLength = 20, Locked = true; TollsTok: Label 'TOLLS', MaxLength = 20, Locked = true; FinesTok: Label 'FINES', MaxLength = 20, Locked = true; + PerDiemTok: Label 'PER-DIEM', MaxLength = 20, Locked = true; AirlineTicketsLbl: Label 'Expenses for commercial air travel, including airline tickets and airfare. Covers flights, passenger names, routes, carriers, booking references, fares, taxes, seat selection, baggage or change fees, and boarding passes.', MaxLength = 250; CarUsageFuelMaintenanceLbl: Label 'Expenses related to company car usage, including fuel, charging, car washes, small tools, consumables, and minor maintenance or repairs performed outside garage service. Excludes major servicing, leasing, and insurance.', MaxLength = 250; DeliveryExpenseLbl: Label 'Expenses for courier, delivery, and parcel services used to send or receive documents, packages, or goods. Includes postal services, express couriers, same-day delivery, shipping fees, and related surcharges.', MaxLength = 250; @@ -91,6 +95,8 @@ codeunit 8204 "Create Expense Categories DM" ProfessionalSubscriptionsLbl: Label 'Expenses for professional or business-related subscriptions. Includes software licenses, online services, professional memberships, journals, publications, and recurring digital services required for work purposes.', MaxLength = 250; TipsLbl: Label 'Expenses for tips or gratuities paid in connection with business activities or travel. Includes tips for taxis, restaurants, hotels, delivery, luggage handling, and similar service-related gratuities.', MaxLength = 250; TollRoadUsageFeeLbl: Label 'Expenses for tolls and road usage fees incurred during business travel. Includes highway and bridge tolls, congestion charges, road pricing fees, vignettes, and similar charges for using public roads.', MaxLength = 250; + PerDiemLbl: Label 'Category to be used for automatic per-diem calculations during business travel.', MaxLength = 250; + PerDiemPostingLbl: Label 'Per Diem', MaxLength = 100; AirlineTicketsPostingLbl: Label 'Airline tickets', MaxLength = 100; CarUsageFuelMaintenancePostingLbl: Label 'Car usage, Fuel & Maintenance', MaxLength = 100; DeliveryExpensePostingLbl: Label 'Delivery expense', MaxLength = 100; @@ -196,12 +202,10 @@ codeunit 8204 "Create Expense Categories DM" exit(PassportTok); end; -#if not CLEAN29 - [Obsolete('This function is no longer used.', '29.0')] procedure PerDiem(): Code[20] begin + exit(PerDiemTok); end; -#endif procedure Personal(): Code[20] begin diff --git a/src/Apps/W1/ExpenseAgent/demo data/Demo Data/2.Master Data/CreateExpenseLocation.Codeunit.al b/src/Apps/W1/ExpenseAgent/demo data/Demo Data/2.Master Data/CreateExpenseLocation.Codeunit.al index c5d9f7f9aa2..7eb05bf2c93 100644 --- a/src/Apps/W1/ExpenseAgent/demo data/Demo Data/2.Master Data/CreateExpenseLocation.Codeunit.al +++ b/src/Apps/W1/ExpenseAgent/demo data/Demo Data/2.Master Data/CreateExpenseLocation.Codeunit.al @@ -18,21 +18,275 @@ codeunit 8208 "Create Expense Location" begin ContosoExpenseAgent.InsertExpenseLocation(CanadaAll(), CanadaAllLocationLbl, CreateCountryRegion.CA(), '', ''); ContosoExpenseAgent.InsertExpenseLocation(DenmarkAll(), DenmarkLbl, CreateCountryRegion.DK(), '', ''); + ContosoExpenseAgent.InsertExpenseLocation(DenmarkCph(), DKCopenhagenLbl, CreateCountryRegion.DK(), CopenhagenLbl, ''); ContosoExpenseAgent.InsertExpenseLocation(Domestic(), DomesticLbl, '', '', ''); ContosoExpenseAgent.InsertExpenseLocation(FranceAll(), FranceLbl, CreateCountryRegion.FR(), '', ''); + ContosoExpenseAgent.InsertExpenseLocation(FranceParis(), FranceParisLbl, CreateCountryRegion.FR(), ParisLbl, ''); ContosoExpenseAgent.InsertExpenseLocation(GermanyAll(), GermanyLbl, CreateCountryRegion.DE(), '', ''); ContosoExpenseAgent.InsertExpenseLocation(UKLondon(), UKLondonAreaLbl, CreateCountryRegion.GB(), LondonLbl, ''); ContosoExpenseAgent.InsertExpenseLocation(UKOther(), UKOtherLbl, CreateCountryRegion.GB(), '', ''); ContosoExpenseAgent.InsertExpenseLocation(USAFlorida(), USAFloridaLbl, CreateCountryRegion.US(), '', FLLbl); ContosoExpenseAgent.InsertExpenseLocation(USANY(), USANYLbl, CreateCountryRegion.US(), NewYorkLbl, ''); ContosoExpenseAgent.InsertExpenseLocation(USAOther(), USAOtherLbl, CreateCountryRegion.US(), '', ''); + ContosoExpenseAgent.InsertExpenseLocation(UnitedArabEmiratesAll(), UnitedArabEmiratesAllLocationLbl, 'AE', '', ''); + ContosoExpenseAgent.InsertExpenseLocation(AustriaAll(), AustriaAllLocationLbl, 'AT', '', ''); + ContosoExpenseAgent.InsertExpenseLocation(AustraliaAll(), AustraliaAllLocationLbl, 'AU', '', ''); + ContosoExpenseAgent.InsertExpenseLocation(BelgiumAll(), BelgiumAllLocationLbl, 'BE', '', ''); + ContosoExpenseAgent.InsertExpenseLocation(BulgariaAll(), BulgariaAllLocationLbl, 'BG', '', ''); + ContosoExpenseAgent.InsertExpenseLocation(BruneiDarussalamAll(), BruneiDarussalamAllLocationLbl, 'BN', '', ''); + ContosoExpenseAgent.InsertExpenseLocation(BrazilAll(), BrazilAllLocationLbl, 'BR', '', ''); + ContosoExpenseAgent.InsertExpenseLocation(SwitzerlandAll(), SwitzerlandAllLocationLbl, 'CH', '', ''); + ContosoExpenseAgent.InsertExpenseLocation(SwitzerlandGeneva(), SwitzerlandGenevaLbl, 'CH', GenevaLbl, ''); + ContosoExpenseAgent.InsertExpenseLocation(SwitzerlandZurich(), SwitzerlandZurichLbl, 'CH', ZurichLbl, ''); + ContosoExpenseAgent.InsertExpenseLocation(ChinaAll(), ChinaAllLocationLbl, 'CN', '', ''); + ContosoExpenseAgent.InsertExpenseLocation(CostaRicaAll(), CostaRicaAllLocationLbl, 'CR', '', ''); + ContosoExpenseAgent.InsertExpenseLocation(CyprusAll(), CyprusAllLocationLbl, 'CY', '', ''); + ContosoExpenseAgent.InsertExpenseLocation(CzechiaAll(), CzechiaAllLocationLbl, 'CZ', '', ''); + ContosoExpenseAgent.InsertExpenseLocation(AlgeriaAll(), AlgeriaAllLocationLbl, 'DZ', '', ''); + ContosoExpenseAgent.InsertExpenseLocation(EstoniaAll(), EstoniaAllLocationLbl, 'EE', '', ''); + ContosoExpenseAgent.InsertExpenseLocation(GreeceAll(), GreeceAllLocationLbl, 'EL', '', ''); + ContosoExpenseAgent.InsertExpenseLocation(SpainAll(), SpainAllLocationLbl, 'ES', '', ''); + ContosoExpenseAgent.InsertExpenseLocation(FinlandAll(), FinlandAllLocationLbl, 'FI', '', ''); + ContosoExpenseAgent.InsertExpenseLocation(FijiIslandsAll(), FijiIslandsAllLocationLbl, 'FJ', '', ''); + ContosoExpenseAgent.InsertExpenseLocation(GreatBritainAll(), GreatBritainAllLocationLbl, 'GB', '', ''); + ContosoExpenseAgent.InsertExpenseLocation(CroatiaAll(), CroatiaAllLocationLbl, 'HR', '', ''); + ContosoExpenseAgent.InsertExpenseLocation(HungaryAll(), HungaryAllLocationLbl, 'HU', '', ''); + ContosoExpenseAgent.InsertExpenseLocation(IndonesiaAll(), IndonesiaAllLocationLbl, 'ID', '', ''); + ContosoExpenseAgent.InsertExpenseLocation(IrelandAll(), IrelandAllLocationLbl, 'IE', '', ''); + ContosoExpenseAgent.InsertExpenseLocation(IndiaAll(), IndiaAllLocationLbl, 'IN', '', ''); + ContosoExpenseAgent.InsertExpenseLocation(IcelandAll(), IcelandAllLocationLbl, 'IS', '', ''); + ContosoExpenseAgent.InsertExpenseLocation(ItalyAll(), ItalyAllLocationLbl, 'IT', '', ''); + ContosoExpenseAgent.InsertExpenseLocation(JapanAll(), JapanAllLocationLbl, 'JP', '', ''); + ContosoExpenseAgent.InsertExpenseLocation(JapanTokyo(), JapanTokyoLbl, 'JP', TokyoLbl, ''); + ContosoExpenseAgent.InsertExpenseLocation(KenyaAll(), KenyaAllLocationLbl, 'KE', '', ''); + ContosoExpenseAgent.InsertExpenseLocation(LithuaniaAll(), LithuaniaAllLocationLbl, 'LT', '', ''); + ContosoExpenseAgent.InsertExpenseLocation(LuxembourgAll(), LuxembourgAllLocationLbl, 'LU', '', ''); + ContosoExpenseAgent.InsertExpenseLocation(LatviaAll(), LatviaAllLocationLbl, 'LV', '', ''); + ContosoExpenseAgent.InsertExpenseLocation(MoroccoAll(), MoroccoAllLocationLbl, 'MA', '', ''); + ContosoExpenseAgent.InsertExpenseLocation(MontenegroAll(), MontenegroAllLocationLbl, 'ME', '', ''); + ContosoExpenseAgent.InsertExpenseLocation(MaltaAll(), MaltaAllLocationLbl, 'MT', '', ''); + ContosoExpenseAgent.InsertExpenseLocation(MexicoAll(), MexicoAllLocationLbl, 'MX', '', ''); + ContosoExpenseAgent.InsertExpenseLocation(MalaysiaAll(), MalaysiaAllLocationLbl, 'MY', '', ''); + ContosoExpenseAgent.InsertExpenseLocation(MozambiqueAll(), MozambiqueAllLocationLbl, 'MZ', '', ''); + ContosoExpenseAgent.InsertExpenseLocation(NigeriaAll(), NigeriaAllLocationLbl, 'NG', '', ''); + ContosoExpenseAgent.InsertExpenseLocation(NorthernIrelandAll(), NorthernIrelandAllLocationLbl, 'NI', '', ''); + ContosoExpenseAgent.InsertExpenseLocation(NetherlandsAll(), NetherlandsAllLocationLbl, 'NL', '', ''); + ContosoExpenseAgent.InsertExpenseLocation(NorwayAll(), NorwayAllLocationLbl, 'NO', '', ''); + ContosoExpenseAgent.InsertExpenseLocation(NorwayOslo(), NorwayOsloLbl, 'NO', OsloLbl, ''); + ContosoExpenseAgent.InsertExpenseLocation(NewZealandAll(), NewZealandAllLocationLbl, 'NZ', '', ''); + ContosoExpenseAgent.InsertExpenseLocation(PhilippinesAll(), PhilippinesAllLocationLbl, 'PH', '', ''); + ContosoExpenseAgent.InsertExpenseLocation(PolandAll(), PolandAllLocationLbl, 'PL', '', ''); + ContosoExpenseAgent.InsertExpenseLocation(PortugalAll(), PortugalAllLocationLbl, 'PT', '', ''); + ContosoExpenseAgent.InsertExpenseLocation(RomaniaAll(), RomaniaAllLocationLbl, 'RO', '', ''); + ContosoExpenseAgent.InsertExpenseLocation(SerbiaAll(), SerbiaAllLocationLbl, 'RS', '', ''); + ContosoExpenseAgent.InsertExpenseLocation(RussiaAll(), RussiaAllLocationLbl, 'RU', '', ''); + ContosoExpenseAgent.InsertExpenseLocation(SaudiArabiaAll(), SaudiArabiaAllLocationLbl, 'SA', '', ''); + ContosoExpenseAgent.InsertExpenseLocation(SolomonIslandsAll(), SolomonIslandsAllLocationLbl, 'SB', '', ''); + ContosoExpenseAgent.InsertExpenseLocation(SwedenAll(), SwedenAllLocationLbl, 'SE', '', ''); + ContosoExpenseAgent.InsertExpenseLocation(SingaporeAll(), SingaporeAllLocationLbl, 'SG', '', ''); + ContosoExpenseAgent.InsertExpenseLocation(SloveniaAll(), SloveniaAllLocationLbl, 'SI', '', ''); + ContosoExpenseAgent.InsertExpenseLocation(SlovakiaAll(), SlovakiaAllLocationLbl, 'SK', '', ''); + ContosoExpenseAgent.InsertExpenseLocation(SwazilandAll(), SwazilandAllLocationLbl, 'SZ', '', ''); + ContosoExpenseAgent.InsertExpenseLocation(ThailandAll(), ThailandAllLocationLbl, 'TH', '', ''); + ContosoExpenseAgent.InsertExpenseLocation(TunisiaAll(), TunisiaAllLocationLbl, 'TN', '', ''); + ContosoExpenseAgent.InsertExpenseLocation(TurkiyeAll(), TurkiyeAllLocationLbl, 'TR', '', ''); + ContosoExpenseAgent.InsertExpenseLocation(TanzaniaAll(), TanzaniaAllLocationLbl, 'TZ', '', ''); + ContosoExpenseAgent.InsertExpenseLocation(UgandaAll(), UgandaAllLocationLbl, 'UG', '', ''); + ContosoExpenseAgent.InsertExpenseLocation(VanuatuAll(), VanuatuAllLocationLbl, 'VU', '', ''); + ContosoExpenseAgent.InsertExpenseLocation(SamoaAll(), SamoaAllLocationLbl, 'WS', '', ''); + ContosoExpenseAgent.InsertExpenseLocation(SouthAfricaAll(), SouthAfricaAllLocationLbl, 'ZA', '', ''); + ContosoExpenseAgent.InsertExpenseLocation(AfghanistanAll(), AfghanistanAllLocationLbl, 'AF', '', ''); + ContosoExpenseAgent.InsertExpenseLocation(AlbaniaAll(), AlbaniaAllLocationLbl, 'AL', '', ''); + ContosoExpenseAgent.InsertExpenseLocation(AndorraAll(), AndorraAllLocationLbl, 'AD', '', ''); + ContosoExpenseAgent.InsertExpenseLocation(AngolaAll(), AngolaAllLocationLbl, 'AO', '', ''); + ContosoExpenseAgent.InsertExpenseLocation(AnguillaAll(), AnguillaAllLocationLbl, 'AI', '', ''); + ContosoExpenseAgent.InsertExpenseLocation(AntarcticaAll(), AntarcticaAllLocationLbl, 'AQ', '', ''); + ContosoExpenseAgent.InsertExpenseLocation(AntiguaBarbudaAll(), AntiguaBarbudaAllLocationLbl, 'AG', '', ''); + ContosoExpenseAgent.InsertExpenseLocation(ArgentinaAll(), ArgentinaAllLocationLbl, 'AR', '', ''); + ContosoExpenseAgent.InsertExpenseLocation(ArmeniaAll(), ArmeniaAllLocationLbl, 'AM', '', ''); + ContosoExpenseAgent.InsertExpenseLocation(ArubaAll(), ArubaAllLocationLbl, 'AW', '', ''); + ContosoExpenseAgent.InsertExpenseLocation(AzerbaijanAll(), AzerbaijanAllLocationLbl, 'AZ', '', ''); + ContosoExpenseAgent.InsertExpenseLocation(BahamasAll(), BahamasAllLocationLbl, 'BS', '', ''); + ContosoExpenseAgent.InsertExpenseLocation(BahrainAll(), BahrainAllLocationLbl, 'BH', '', ''); + ContosoExpenseAgent.InsertExpenseLocation(BangladeshAll(), BangladeshAllLocationLbl, 'BD', '', ''); + ContosoExpenseAgent.InsertExpenseLocation(BarbadosAll(), BarbadosAllLocationLbl, 'BB', '', ''); + ContosoExpenseAgent.InsertExpenseLocation(BelarusAll(), BelarusAllLocationLbl, 'BY', '', ''); + ContosoExpenseAgent.InsertExpenseLocation(BelizeAll(), BelizeAllLocationLbl, 'BZ', '', ''); + ContosoExpenseAgent.InsertExpenseLocation(BeninAll(), BeninAllLocationLbl, 'BJ', '', ''); + ContosoExpenseAgent.InsertExpenseLocation(BermudaAll(), BermudaAllLocationLbl, 'BM', '', ''); + ContosoExpenseAgent.InsertExpenseLocation(BhutanAll(), BhutanAllLocationLbl, 'BT', '', ''); + ContosoExpenseAgent.InsertExpenseLocation(BoliviaAll(), BoliviaAllLocationLbl, 'BO', '', ''); + ContosoExpenseAgent.InsertExpenseLocation(BonaireAll(), BonaireAllLocationLbl, 'BQ', '', ''); + ContosoExpenseAgent.InsertExpenseLocation(BosniaHerzegovinaAll(), BosniaHerzegovinaAllLocationLbl, 'BA', '', ''); + ContosoExpenseAgent.InsertExpenseLocation(BotswanaAll(), BotswanaAllLocationLbl, 'BW', '', ''); + ContosoExpenseAgent.InsertExpenseLocation(BouvetIslandAll(), BouvetIslandAllLocationLbl, 'BV', '', ''); + ContosoExpenseAgent.InsertExpenseLocation(BritishIndianOceanAll(), BritishIndianOceanAllLocationLbl, 'IO', '', ''); + ContosoExpenseAgent.InsertExpenseLocation(BurkinaFasoAll(), BurkinaFasoAllLocationLbl, 'BF', '', ''); + ContosoExpenseAgent.InsertExpenseLocation(BurundiAll(), BurundiAllLocationLbl, 'BI', '', ''); + ContosoExpenseAgent.InsertExpenseLocation(CaboVerdeAll(), CaboVerdeAllLocationLbl, 'CV', '', ''); + ContosoExpenseAgent.InsertExpenseLocation(CambodiaAll(), CambodiaAllLocationLbl, 'KH', '', ''); + ContosoExpenseAgent.InsertExpenseLocation(CameroonAll(), CameroonAllLocationLbl, 'CM', '', ''); + ContosoExpenseAgent.InsertExpenseLocation(CaymanIslandsAll(), CaymanIslandsAllLocationLbl, 'KY', '', ''); + ContosoExpenseAgent.InsertExpenseLocation(CentralAfricanAll(), CentralAfricanAllLocationLbl, 'CF', '', ''); + ContosoExpenseAgent.InsertExpenseLocation(ChadAll(), ChadAllLocationLbl, 'TD', '', ''); + ContosoExpenseAgent.InsertExpenseLocation(ChileAll(), ChileAllLocationLbl, 'CL', '', ''); + ContosoExpenseAgent.InsertExpenseLocation(ChristmasIslandAll(), ChristmasIslandAllLocationLbl, 'CX', '', ''); + ContosoExpenseAgent.InsertExpenseLocation(CocosIslandsAll(), CocosIslandsAllLocationLbl, 'CC', '', ''); + ContosoExpenseAgent.InsertExpenseLocation(ColombiaAll(), ColombiaAllLocationLbl, 'CO', '', ''); + ContosoExpenseAgent.InsertExpenseLocation(ComorosAll(), ComorosAllLocationLbl, 'KM', '', ''); + ContosoExpenseAgent.InsertExpenseLocation(CongoDRAll(), CongoDRAllLocationLbl, 'CD', '', ''); + ContosoExpenseAgent.InsertExpenseLocation(CongoAll(), CongoAllLocationLbl, 'CG', '', ''); + ContosoExpenseAgent.InsertExpenseLocation(CookIslandsAll(), CookIslandsAllLocationLbl, 'CK', '', ''); + ContosoExpenseAgent.InsertExpenseLocation(CubaAll(), CubaAllLocationLbl, 'CU', '', ''); + ContosoExpenseAgent.InsertExpenseLocation(CuracaoAll(), CuracaoAllLocationLbl, 'CW', '', ''); + ContosoExpenseAgent.InsertExpenseLocation(CotedIvoireAll(), CotedIvoireAllLocationLbl, 'CI', '', ''); + ContosoExpenseAgent.InsertExpenseLocation(DjiboutiAll(), DjiboutiAllLocationLbl, 'DJ', '', ''); + ContosoExpenseAgent.InsertExpenseLocation(DominicaAll(), DominicaAllLocationLbl, 'DM', '', ''); + ContosoExpenseAgent.InsertExpenseLocation(DominicanAll(), DominicanAllLocationLbl, 'DO', '', ''); + ContosoExpenseAgent.InsertExpenseLocation(EcuadorAll(), EcuadorAllLocationLbl, 'EC', '', ''); + ContosoExpenseAgent.InsertExpenseLocation(EgyptAll(), EgyptAllLocationLbl, 'EG', '', ''); + ContosoExpenseAgent.InsertExpenseLocation(ElSalvadorAll(), ElSalvadorAllLocationLbl, 'SV', '', ''); + ContosoExpenseAgent.InsertExpenseLocation(EquatorialGuineaAll(), EquatorialGuineaAllLocationLbl, 'GQ', '', ''); + ContosoExpenseAgent.InsertExpenseLocation(EritreaAll(), EritreaAllLocationLbl, 'ER', '', ''); + ContosoExpenseAgent.InsertExpenseLocation(EthiopiaAll(), EthiopiaAllLocationLbl, 'ET', '', ''); + ContosoExpenseAgent.InsertExpenseLocation(FalklandIslandsAll(), FalklandIslandsAllLocationLbl, 'FK', '', ''); + ContosoExpenseAgent.InsertExpenseLocation(FaroeIslandsAll(), FaroeIslandsAllLocationLbl, 'FO', '', ''); + ContosoExpenseAgent.InsertExpenseLocation(FrenchGuianaAll(), FrenchGuianaAllLocationLbl, 'GF', '', ''); + ContosoExpenseAgent.InsertExpenseLocation(FrenchPolynesiaAll(), FrenchPolynesiaAllLocationLbl, 'PF', '', ''); + ContosoExpenseAgent.InsertExpenseLocation(FrenchSouthernAll(), FrenchSouthernAllLocationLbl, 'TF', '', ''); + ContosoExpenseAgent.InsertExpenseLocation(GabonAll(), GabonAllLocationLbl, 'GA', '', ''); + ContosoExpenseAgent.InsertExpenseLocation(GambiaAll(), GambiaAllLocationLbl, 'GM', '', ''); + ContosoExpenseAgent.InsertExpenseLocation(GeorgiaAll(), GeorgiaAllLocationLbl, 'GE', '', ''); + ContosoExpenseAgent.InsertExpenseLocation(GhanaAll(), GhanaAllLocationLbl, 'GH', '', ''); + ContosoExpenseAgent.InsertExpenseLocation(GibraltarAll(), GibraltarAllLocationLbl, 'GI', '', ''); + ContosoExpenseAgent.InsertExpenseLocation(GreenlandAll(), GreenlandAllLocationLbl, 'GL', '', ''); + ContosoExpenseAgent.InsertExpenseLocation(GrenadaAll(), GrenadaAllLocationLbl, 'GD', '', ''); + ContosoExpenseAgent.InsertExpenseLocation(GuadeloupeAll(), GuadeloupeAllLocationLbl, 'GP', '', ''); + ContosoExpenseAgent.InsertExpenseLocation(GuamAll(), GuamAllLocationLbl, 'GU', '', ''); + ContosoExpenseAgent.InsertExpenseLocation(GuatemalaAll(), GuatemalaAllLocationLbl, 'GT', '', ''); + ContosoExpenseAgent.InsertExpenseLocation(GuernseyAll(), GuernseyAllLocationLbl, 'GG', '', ''); + ContosoExpenseAgent.InsertExpenseLocation(GuineaAll(), GuineaAllLocationLbl, 'GN', '', ''); + ContosoExpenseAgent.InsertExpenseLocation(GuineaBissauAll(), GuineaBissauAllLocationLbl, 'GW', '', ''); + ContosoExpenseAgent.InsertExpenseLocation(GuyanaAll(), GuyanaAllLocationLbl, 'GY', '', ''); + ContosoExpenseAgent.InsertExpenseLocation(HaitiAll(), HaitiAllLocationLbl, 'HT', '', ''); + ContosoExpenseAgent.InsertExpenseLocation(HeardIslandAll(), HeardIslandAllLocationLbl, 'HM', '', ''); + ContosoExpenseAgent.InsertExpenseLocation(HolySeeAll(), HolySeeAllLocationLbl, 'VA', '', ''); + ContosoExpenseAgent.InsertExpenseLocation(HondurasAll(), HondurasAllLocationLbl, 'HN', '', ''); + ContosoExpenseAgent.InsertExpenseLocation(HongKongAll(), HongKongAllLocationLbl, 'HK', '', ''); + ContosoExpenseAgent.InsertExpenseLocation(IsleManAll(), IsleManAllLocationLbl, 'IM', '', ''); + ContosoExpenseAgent.InsertExpenseLocation(IsraelAll(), IsraelAllLocationLbl, 'IL', '', ''); + ContosoExpenseAgent.InsertExpenseLocation(JamaicaAll(), JamaicaAllLocationLbl, 'JM', '', ''); + ContosoExpenseAgent.InsertExpenseLocation(JerseyAll(), JerseyAllLocationLbl, 'JE', '', ''); + ContosoExpenseAgent.InsertExpenseLocation(JordanAll(), JordanAllLocationLbl, 'JO', '', ''); + ContosoExpenseAgent.InsertExpenseLocation(KazakhstanAll(), KazakhstanAllLocationLbl, 'KZ', '', ''); + ContosoExpenseAgent.InsertExpenseLocation(KiribatiAll(), KiribatiAllLocationLbl, 'KI', '', ''); + ContosoExpenseAgent.InsertExpenseLocation(NorthKoreaAll(), NorthKoreaAllLocationLbl, 'KP', '', ''); + ContosoExpenseAgent.InsertExpenseLocation(SouthKoreaAll(), SouthKoreaAllLocationLbl, 'KR', '', ''); + ContosoExpenseAgent.InsertExpenseLocation(KuwaitAll(), KuwaitAllLocationLbl, 'KW', '', ''); + ContosoExpenseAgent.InsertExpenseLocation(KyrgyzstanAll(), KyrgyzstanAllLocationLbl, 'KG', '', ''); + ContosoExpenseAgent.InsertExpenseLocation(LaosAll(), LaosAllLocationLbl, 'LA', '', ''); + ContosoExpenseAgent.InsertExpenseLocation(LebanonAll(), LebanonAllLocationLbl, 'LB', '', ''); + ContosoExpenseAgent.InsertExpenseLocation(LesothoAll(), LesothoAllLocationLbl, 'LS', '', ''); + ContosoExpenseAgent.InsertExpenseLocation(LiberiaAll(), LiberiaAllLocationLbl, 'LR', '', ''); + ContosoExpenseAgent.InsertExpenseLocation(LibyaAll(), LibyaAllLocationLbl, 'LY', '', ''); + ContosoExpenseAgent.InsertExpenseLocation(LiechtensteinAll(), LiechtensteinAllLocationLbl, 'LI', '', ''); + ContosoExpenseAgent.InsertExpenseLocation(MacaoAll(), MacaoAllLocationLbl, 'MO', '', ''); + ContosoExpenseAgent.InsertExpenseLocation(MadagascarAll(), MadagascarAllLocationLbl, 'MG', '', ''); + ContosoExpenseAgent.InsertExpenseLocation(MalawiAll(), MalawiAllLocationLbl, 'MW', '', ''); + ContosoExpenseAgent.InsertExpenseLocation(MaldivesAll(), MaldivesAllLocationLbl, 'MV', '', ''); + ContosoExpenseAgent.InsertExpenseLocation(MaliAll(), MaliAllLocationLbl, 'ML', '', ''); + ContosoExpenseAgent.InsertExpenseLocation(MarshallIslandsAll(), MarshallIslandsAllLocationLbl, 'MH', '', ''); + ContosoExpenseAgent.InsertExpenseLocation(MartiniqueAll(), MartiniqueAllLocationLbl, 'MQ', '', ''); + ContosoExpenseAgent.InsertExpenseLocation(MauritaniaAll(), MauritaniaAllLocationLbl, 'MR', '', ''); + ContosoExpenseAgent.InsertExpenseLocation(MauritiusAll(), MauritiusAllLocationLbl, 'MU', '', ''); + ContosoExpenseAgent.InsertExpenseLocation(MayotteAll(), MayotteAllLocationLbl, 'YT', '', ''); + ContosoExpenseAgent.InsertExpenseLocation(MicronesiaAll(), MicronesiaAllLocationLbl, 'FM', '', ''); + ContosoExpenseAgent.InsertExpenseLocation(MoldovaAll(), MoldovaAllLocationLbl, 'MD', '', ''); + ContosoExpenseAgent.InsertExpenseLocation(MonacoAll(), MonacoAllLocationLbl, 'MC', '', ''); + ContosoExpenseAgent.InsertExpenseLocation(MongoliaAll(), MongoliaAllLocationLbl, 'MN', '', ''); + ContosoExpenseAgent.InsertExpenseLocation(MontserratAll(), MontserratAllLocationLbl, 'MS', '', ''); + ContosoExpenseAgent.InsertExpenseLocation(MyanmarAll(), MyanmarAllLocationLbl, 'MM', '', ''); + ContosoExpenseAgent.InsertExpenseLocation(NamibiaAll(), NamibiaAllLocationLbl, 'NA', '', ''); + ContosoExpenseAgent.InsertExpenseLocation(NauruAll(), NauruAllLocationLbl, 'NR', '', ''); + ContosoExpenseAgent.InsertExpenseLocation(NepalAll(), NepalAllLocationLbl, 'NP', '', ''); + ContosoExpenseAgent.InsertExpenseLocation(NewCaledoniaAll(), NewCaledoniaAllLocationLbl, 'NC', '', ''); + ContosoExpenseAgent.InsertExpenseLocation(NigerAll(), NigerAllLocationLbl, 'NE', '', ''); + ContosoExpenseAgent.InsertExpenseLocation(NiueAll(), NiueAllLocationLbl, 'NU', '', ''); + ContosoExpenseAgent.InsertExpenseLocation(NorfolkIslandAll(), NorfolkIslandAllLocationLbl, 'NF', '', ''); + ContosoExpenseAgent.InsertExpenseLocation(NorthMacedoniaAll(), NorthMacedoniaAllLocationLbl, 'MK', '', ''); + ContosoExpenseAgent.InsertExpenseLocation(NorthernMarianaAll(), NorthernMarianaAllLocationLbl, 'MP', '', ''); + ContosoExpenseAgent.InsertExpenseLocation(OmanAll(), OmanAllLocationLbl, 'OM', '', ''); + ContosoExpenseAgent.InsertExpenseLocation(PakistanAll(), PakistanAllLocationLbl, 'PK', '', ''); + ContosoExpenseAgent.InsertExpenseLocation(PalauAll(), PalauAllLocationLbl, 'PW', '', ''); + ContosoExpenseAgent.InsertExpenseLocation(PalestineAll(), PalestineAllLocationLbl, 'PS', '', ''); + ContosoExpenseAgent.InsertExpenseLocation(PanamaAll(), PanamaAllLocationLbl, 'PA', '', ''); + ContosoExpenseAgent.InsertExpenseLocation(PapuaNewGuineaAll(), PapuaNewGuineaAllLocationLbl, 'PG', '', ''); + ContosoExpenseAgent.InsertExpenseLocation(ParaguayAll(), ParaguayAllLocationLbl, 'PY', '', ''); + ContosoExpenseAgent.InsertExpenseLocation(PeruAll(), PeruAllLocationLbl, 'PE', '', ''); + ContosoExpenseAgent.InsertExpenseLocation(PitcairnAll(), PitcairnAllLocationLbl, 'PN', '', ''); + ContosoExpenseAgent.InsertExpenseLocation(PuertoRicoAll(), PuertoRicoAllLocationLbl, 'PR', '', ''); + ContosoExpenseAgent.InsertExpenseLocation(QatarAll(), QatarAllLocationLbl, 'QA', '', ''); + ContosoExpenseAgent.InsertExpenseLocation(RwandaAll(), RwandaAllLocationLbl, 'RW', '', ''); + ContosoExpenseAgent.InsertExpenseLocation(ReunionAll(), ReunionAllLocationLbl, 'RE', '', ''); + ContosoExpenseAgent.InsertExpenseLocation(SaintBarthelemyAll(), SaintBarthelemyAllLocationLbl, 'BL', '', ''); + ContosoExpenseAgent.InsertExpenseLocation(SaintHelenaAll(), SaintHelenaAllLocationLbl, 'SH', '', ''); + ContosoExpenseAgent.InsertExpenseLocation(SaintKittsNevisAll(), SaintKittsNevisAllLocationLbl, 'KN', '', ''); + ContosoExpenseAgent.InsertExpenseLocation(SaintLuciaAll(), SaintLuciaAllLocationLbl, 'LC', '', ''); + ContosoExpenseAgent.InsertExpenseLocation(SaintMartinAll(), SaintMartinAllLocationLbl, 'MF', '', ''); + ContosoExpenseAgent.InsertExpenseLocation(SaintPierreQuelonAll(), SaintPierreQuelonAllLocationLbl, 'PM', '', ''); + ContosoExpenseAgent.InsertExpenseLocation(SaintVincentAll(), SaintVincentAllLocationLbl, 'VC', '', ''); + ContosoExpenseAgent.InsertExpenseLocation(SanMarinoAll(), SanMarinoAllLocationLbl, 'SM', '', ''); + ContosoExpenseAgent.InsertExpenseLocation(SaoTomeAll(), SaoTomeAllLocationLbl, 'ST', '', ''); + ContosoExpenseAgent.InsertExpenseLocation(SenegalAll(), SenegalAllLocationLbl, 'SN', '', ''); + ContosoExpenseAgent.InsertExpenseLocation(SeychellesAll(), SeychellesAllLocationLbl, 'SC', '', ''); + ContosoExpenseAgent.InsertExpenseLocation(SierraLeoneAll(), SierraLeoneAllLocationLbl, 'SL', '', ''); + ContosoExpenseAgent.InsertExpenseLocation(SintMaartenAll(), SintMaartenAllLocationLbl, 'SX', '', ''); + ContosoExpenseAgent.InsertExpenseLocation(SomaliaAll(), SomaliaAllLocationLbl, 'SO', '', ''); + ContosoExpenseAgent.InsertExpenseLocation(SouthGeorgiaAll(), SouthGeorgiaAllLocationLbl, 'GS', '', ''); + ContosoExpenseAgent.InsertExpenseLocation(SouthSudanAll(), SouthSudanAllLocationLbl, 'SS', '', ''); + ContosoExpenseAgent.InsertExpenseLocation(SriLankaAll(), SriLankaAllLocationLbl, 'LK', '', ''); + ContosoExpenseAgent.InsertExpenseLocation(SudanAll(), SudanAllLocationLbl, 'SD', '', ''); + ContosoExpenseAgent.InsertExpenseLocation(SurinameAll(), SurinameAllLocationLbl, 'SR', '', ''); + ContosoExpenseAgent.InsertExpenseLocation(SvalbardJanMayenAll(), SvalbardJanMayenAllLocationLbl, 'SJ', '', ''); + ContosoExpenseAgent.InsertExpenseLocation(SyriaAll(), SyriaAllLocationLbl, 'SY', '', ''); + ContosoExpenseAgent.InsertExpenseLocation(TaiwanAll(), TaiwanAllLocationLbl, 'TW', '', ''); + ContosoExpenseAgent.InsertExpenseLocation(TajikistanAll(), TajikistanAllLocationLbl, 'TJ', '', ''); + ContosoExpenseAgent.InsertExpenseLocation(TimorLesteAll(), TimorLesteAllLocationLbl, 'TL', '', ''); + ContosoExpenseAgent.InsertExpenseLocation(TogoAll(), TogoAllLocationLbl, 'TG', '', ''); + ContosoExpenseAgent.InsertExpenseLocation(TokelauAll(), TokelauAllLocationLbl, 'TK', '', ''); + ContosoExpenseAgent.InsertExpenseLocation(TongaAll(), TongaAllLocationLbl, 'TO', '', ''); + ContosoExpenseAgent.InsertExpenseLocation(TrinidadTobagoAll(), TrinidadTobagoAllLocationLbl, 'TT', '', ''); + ContosoExpenseAgent.InsertExpenseLocation(TurkmenistanAll(), TurkmenistanAllLocationLbl, 'TM', '', ''); + ContosoExpenseAgent.InsertExpenseLocation(TurksCalcosAll(), TurksCalcosAllLocationLbl, 'TC', '', ''); + ContosoExpenseAgent.InsertExpenseLocation(TuvaluAll(), TuvaluAllLocationLbl, 'TV', '', ''); + ContosoExpenseAgent.InsertExpenseLocation(UkraineAll(), UkraineAllLocationLbl, 'UA', '', ''); + ContosoExpenseAgent.InsertExpenseLocation(USMinorOutlyingAll(), USMinorOutlyingAllLocationLbl, 'UM', '', ''); + ContosoExpenseAgent.InsertExpenseLocation(UruguayAll(), UruguayAllLocationLbl, 'UY', '', ''); + ContosoExpenseAgent.InsertExpenseLocation(UzbekistanAll(), UzbekistanAllLocationLbl, 'UZ', '', ''); + ContosoExpenseAgent.InsertExpenseLocation(VenezuelAll(), VenezuelAllLocationLbl, 'VE', '', ''); + ContosoExpenseAgent.InsertExpenseLocation(VietnamAll(), VietnamAllLocationLbl, 'VN', '', ''); + ContosoExpenseAgent.InsertExpenseLocation(VirginIslandsBrAll(), VirginIslandsBrAllLocationLbl, 'VG', '', ''); + ContosoExpenseAgent.InsertExpenseLocation(VirginIslandsUSAll(), VirginIslandsUSAllLocationLbl, 'VI', '', ''); + ContosoExpenseAgent.InsertExpenseLocation(WallisatunaAll(), WallisatunaAllLocationLbl, 'WF', '', ''); + ContosoExpenseAgent.InsertExpenseLocation(WesternSaharaAll(), WesternSaharaAllLocationLbl, 'EH', '', ''); + ContosoExpenseAgent.InsertExpenseLocation(YemenAll(), YemenAllLocationLbl, 'YE', '', ''); + ContosoExpenseAgent.InsertExpenseLocation(ZambiaAll(), ZambiaAllLocationLbl, 'ZM', '', ''); + ContosoExpenseAgent.InsertExpenseLocation(ZimbabweAll(), ZimbabweAllLocationLbl, 'ZW', '', ''); + ContosoExpenseAgent.InsertExpenseLocation(AlandIslandsAll(), AlandIslandsAllLocationLbl, 'AX', '', ''); end; var + UnitedArabEmiratesAllTok: Label 'UNITEDARABEMIR-ALL', MaxLength = 20, Locked = true; + UnitedArabEmiratesAllLocationLbl: Label 'United Arab Emirates - all location', MaxLength = 100; CanadaAllTok: Label 'CANADA-ALL', MaxLength = 20, Locked = true; DenmarkAllTok: Label 'DENMARK-ALL', MaxLength = 20, Locked = true; + DenmarkCphTok: Label 'DK-COPENHAGEN', MaxLength = 20, Locked = true; + DenmarkLbl: Label 'Denmark', MaxLength = 100; + DKCopenhagenLbl: Label 'Denmark - Copenhagen', MaxLength = 100; + CopenhagenLbl: Label 'Copenhagen', MaxLength = 100; DomesticTok: Label 'DOMESTIC', MaxLength = 20, Locked = true; FranceAllTok: Label 'FRANCE-ALL', MaxLength = 20, Locked = true; + FranceParisTok: Label 'FRANCE-PARIS', MaxLength = 20, Locked = true; GermanyAllTok: Label 'GERMANY-ALL', MaxLength = 20, Locked = true; UKLondonTok: Label 'UK-LONDON', MaxLength = 20, Locked = true; UKOtherTok: Label 'UK-OTHER', MaxLength = 20, Locked = true; @@ -40,9 +294,10 @@ codeunit 8208 "Create Expense Location" USANYTok: Label 'USA-NY', MaxLength = 20, Locked = true; USAOtherTok: Label 'USA-OTHER', MaxLength = 20, Locked = true; CanadaAllLocationLbl: Label 'Canada - all location', MaxLength = 100; - DenmarkLbl: Label 'Denmark', MaxLength = 100; DomesticLbl: Label 'Domestic', MaxLength = 100; FranceLbl: Label 'France', MaxLength = 100; + FranceParisLbl: Label 'France - Paris', MaxLength = 100; + ParisLbl: Label 'Paris', MaxLength = 100; GermanyLbl: Label 'Germany', MaxLength = 100; UKLondonAreaLbl: Label 'United Kingdom - London area', MaxLength = 100; LondonLbl: Label 'London', MaxLength = 30; @@ -52,25 +307,1752 @@ codeunit 8208 "Create Expense Location" USAOtherLbl: Label 'United States - Other', MaxLength = 100; NewYorkLbl: Label 'New York', MaxLength = 30; FLLbl: Label 'FL', MaxLength = 30; + AustriaAllTok: Label 'AUSTRIA-ALL', MaxLength = 20, Locked = true; + AustriaAllLocationLbl: Label 'Austria - all location', MaxLength = 100; + AustraliaAllTok: Label 'AUSTRALIA-ALL', MaxLength = 20, Locked = true; + AustraliaAllLocationLbl: Label 'Australia - all location', MaxLength = 100; + BelgiumAllTok: Label 'BELGIUM-ALL', MaxLength = 20, Locked = true; + BelgiumAllLocationLbl: Label 'Belgium - all location', MaxLength = 100; + BulgariaAllTok: Label 'BULGARIA-ALL', MaxLength = 20, Locked = true; + BulgariaAllLocationLbl: Label 'Bulgaria - all location', MaxLength = 100; + BruneiDarussalamAllTok: Label 'BRUNEIDARUSSALAM-ALL', MaxLength = 20, Locked = true; + BruneiDarussalamAllLocationLbl: Label 'Brunei Darussalam - all location', MaxLength = 100; + BrazilAllTok: Label 'BRAZIL-ALL', MaxLength = 20, Locked = true; + BrazilAllLocationLbl: Label 'Brazil - all location', MaxLength = 100; + SwitzerlandAllTok: Label 'SWITZERLAND-ALL', MaxLength = 20, Locked = true; + SwitzerlandAllLocationLbl: Label 'Switzerland - all location', MaxLength = 100; + SwitzerlandGenevaTok: Label 'SWITZERLAND-GENEVA', MaxLength = 20, Locked = true; + SwitzerlandGenevaLbl: Label 'Switzerland - Geneva', MaxLength = 100; + GenevaLbl: Label 'Geneva', MaxLength = 100; + SwitzerlandZurichTok: Label 'SWITZERLAND-ZURICH', MaxLength = 20, Locked = true; + SwitzerlandZurichLbl: Label 'Switzerland - Zurich', MaxLength = 100; + ZurichLbl: Label 'Zurich', MaxLength = 100; + ChinaAllTok: Label 'CHINA-ALL', MaxLength = 20, Locked = true; + ChinaAllLocationLbl: Label 'China - all location', MaxLength = 100; + CostaRicaAllTok: Label 'COSTARICA-ALL', MaxLength = 20, Locked = true; + CostaRicaAllLocationLbl: Label 'Costa Rica - all location', MaxLength = 100; + CyprusAllTok: Label 'CYPRUS-ALL', MaxLength = 20, Locked = true; + CyprusAllLocationLbl: Label 'Cyprus - all location', MaxLength = 100; + CzechiaAllTok: Label 'CZECHIA-ALL', MaxLength = 20, Locked = true; + CzechiaAllLocationLbl: Label 'Czechia - all location', MaxLength = 100; + AlgeriaAllTok: Label 'ALGERIA-ALL', MaxLength = 20, Locked = true; + AlgeriaAllLocationLbl: Label 'Algeria - all location', MaxLength = 100; + EstoniaAllTok: Label 'ESTONIA-ALL', MaxLength = 20, Locked = true; + EstoniaAllLocationLbl: Label 'Estonia - all location', MaxLength = 100; + GreeceAllTok: Label 'GREECE-ALL', MaxLength = 20, Locked = true; + GreeceAllLocationLbl: Label 'Greece - all location', MaxLength = 100; + SpainAllTok: Label 'SPAIN-ALL', MaxLength = 20, Locked = true; + SpainAllLocationLbl: Label 'Spain - all location', MaxLength = 100; + FinlandAllTok: Label 'FINLAND-ALL', MaxLength = 20, Locked = true; + FinlandAllLocationLbl: Label 'Finland - all location', MaxLength = 100; + FijiIslandsAllTok: Label 'FIJIISLANDS-ALL', MaxLength = 20, Locked = true; + FijiIslandsAllLocationLbl: Label 'Fiji Islands - all location', MaxLength = 100; + GreatBritainAllTok: Label 'GREATBRITAIN-ALL', MaxLength = 20, Locked = true; + GreatBritainAllLocationLbl: Label 'Great Britain - all location', MaxLength = 100; + CroatiaAllTok: Label 'CROATIA-ALL', MaxLength = 20, Locked = true; + CroatiaAllLocationLbl: Label 'Croatia - all location', MaxLength = 100; + HungaryAllTok: Label 'HUNGARY-ALL', MaxLength = 20, Locked = true; + HungaryAllLocationLbl: Label 'Hungary - all location', MaxLength = 100; + IndonesiaAllTok: Label 'INDONESIA-ALL', MaxLength = 20, Locked = true; + IndonesiaAllLocationLbl: Label 'Indonesia - all location', MaxLength = 100; + IrelandAllTok: Label 'IRELAND-ALL', MaxLength = 20, Locked = true; + IrelandAllLocationLbl: Label 'Ireland - all location', MaxLength = 100; + IndiaAllTok: Label 'INDIA-ALL', MaxLength = 20, Locked = true; + IndiaAllLocationLbl: Label 'India - all location', MaxLength = 100; + IcelandAllTok: Label 'ICELAND-ALL', MaxLength = 20, Locked = true; + IcelandAllLocationLbl: Label 'Iceland - all location', MaxLength = 100; + ItalyAllTok: Label 'ITALY-ALL', MaxLength = 20, Locked = true; + ItalyAllLocationLbl: Label 'Italy - all location', MaxLength = 100; + JapanAllTok: Label 'JAPAN-ALL', MaxLength = 20, Locked = true; + JapanAllLocationLbl: Label 'Japan - all location', MaxLength = 100; + JapanTokyoTok: Label 'JAPAN-TOKYO', MaxLength = 20, Locked = true; + JapanTokyoLbl: Label 'Japan - Tokyo', MaxLength = 100; + TokyoLbl: Label 'Tokyo', MaxLength = 100; + KenyaAllTok: Label 'KENYA-ALL', MaxLength = 20, Locked = true; + KenyaAllLocationLbl: Label 'Kenya - all location', MaxLength = 100; + LithuaniaAllTok: Label 'LITHUANIA-ALL', MaxLength = 20, Locked = true; + LithuaniaAllLocationLbl: Label 'Lithuania - all location', MaxLength = 100; + LuxembourgAllTok: Label 'LUXEMBOURG-ALL', MaxLength = 20, Locked = true; + LuxembourgAllLocationLbl: Label 'Luxembourg - all location', MaxLength = 100; + LatviaAllTok: Label 'LATVIA-ALL', MaxLength = 20, Locked = true; + LatviaAllLocationLbl: Label 'Latvia - all location', MaxLength = 100; + MoroccoAllTok: Label 'MOROCCO-ALL', MaxLength = 20, Locked = true; + MoroccoAllLocationLbl: Label 'Morocco - all location', MaxLength = 100; + MontenegroAllTok: Label 'MONTENEGRO-ALL', MaxLength = 20, Locked = true; + MontenegroAllLocationLbl: Label 'Montenegro - all location', MaxLength = 100; + MaltaAllTok: Label 'MALTA-ALL', MaxLength = 20, Locked = true; + MaltaAllLocationLbl: Label 'Malta - all location', MaxLength = 100; + MexicoAllTok: Label 'MEXICO-ALL', MaxLength = 20, Locked = true; + MexicoAllLocationLbl: Label 'Mexico - all location', MaxLength = 100; + MalaysiaAllTok: Label 'MALAYSIA-ALL', MaxLength = 20, Locked = true; + MalaysiaAllLocationLbl: Label 'Malaysia - all location', MaxLength = 100; + MozambiqueAllTok: Label 'MOZAMBIQUE-ALL', MaxLength = 20, Locked = true; + MozambiqueAllLocationLbl: Label 'Mozambique - all location', MaxLength = 100; + NigeriaAllTok: Label 'NIGERIA-ALL', MaxLength = 20, Locked = true; + NigeriaAllLocationLbl: Label 'Nigeria - all location', MaxLength = 100; + NorthernIrelandAllTok: Label 'NORTHERNIRELAND-ALL', MaxLength = 20, Locked = true; + NorthernIrelandAllLocationLbl: Label 'Northern Ireland - all location', MaxLength = 100; + NetherlandsAllTok: Label 'NETHERLANDS-ALL', MaxLength = 20, Locked = true; + NetherlandsAllLocationLbl: Label 'Netherlands - all location', MaxLength = 100; + NorwayAllTok: Label 'NORWAY-ALL', MaxLength = 20, Locked = true; + NorwayAllLocationLbl: Label 'Norway - all location', MaxLength = 100; + NorwayOsloTok: Label 'NORWAY-OSLO', MaxLength = 20, Locked = true; + NorwayOsloLbl: Label 'Norway - Oslo', MaxLength = 100; + OsloLbl: Label 'Norway - Oslo', MaxLength = 100; + NewZealandAllTok: Label 'NEWZEALAND-ALL', MaxLength = 20, Locked = true; + NewZealandAllLocationLbl: Label 'New Zealand - all location', MaxLength = 100; + PhilippinesAllTok: Label 'PHILIPPINES-ALL', MaxLength = 20, Locked = true; + PhilippinesAllLocationLbl: Label 'Philippines - all location', MaxLength = 100; + PolandAllTok: Label 'POLAND-ALL', MaxLength = 20, Locked = true; + PolandAllLocationLbl: Label 'Poland - all location', MaxLength = 100; + PortugalAllTok: Label 'PORTUGAL-ALL', MaxLength = 20, Locked = true; + PortugalAllLocationLbl: Label 'Portugal - all location', MaxLength = 100; + RomaniaAllTok: Label 'ROMANIA-ALL', MaxLength = 20, Locked = true; + RomaniaAllLocationLbl: Label 'Romania - all location', MaxLength = 100; + SerbiaAllTok: Label 'SERBIA-ALL', MaxLength = 20, Locked = true; + SerbiaAllLocationLbl: Label 'Serbia - all location', MaxLength = 100; + RussiaAllTok: Label 'RUSSIA-ALL', MaxLength = 20, Locked = true; + RussiaAllLocationLbl: Label 'Russia - all location', MaxLength = 100; + SaudiArabiaAllTok: Label 'SAUDIARABIA-ALL', MaxLength = 20, Locked = true; + SaudiArabiaAllLocationLbl: Label 'Saudi Arabia - all location', MaxLength = 100; + SolomonIslandsAllTok: Label 'SOLOMONISLANDS-ALL', MaxLength = 20, Locked = true; + SolomonIslandsAllLocationLbl: Label 'Solomon Islands - all location', MaxLength = 100; + SwedenAllTok: Label 'SWEDEN-ALL', MaxLength = 20, Locked = true; + SwedenAllLocationLbl: Label 'Sweden - all location', MaxLength = 100; + SingaporeAllTok: Label 'SINGAPORE-ALL', MaxLength = 20, Locked = true; + SingaporeAllLocationLbl: Label 'Singapore - all location', MaxLength = 100; + SloveniaAllTok: Label 'SLOVENIA-ALL', MaxLength = 20, Locked = true; + SloveniaAllLocationLbl: Label 'Slovenia - all location', MaxLength = 100; + SlovakiaAllTok: Label 'SLOVAKIA-ALL', MaxLength = 20, Locked = true; + SlovakiaAllLocationLbl: Label 'Slovakia - all location', MaxLength = 100; + SwazilandAllTok: Label 'SWAZILAND-ALL', MaxLength = 20, Locked = true; + SwazilandAllLocationLbl: Label 'Swaziland - all location', MaxLength = 100; + ThailandAllTok: Label 'THAILAND-ALL', MaxLength = 20, Locked = true; + ThailandAllLocationLbl: Label 'Thailand - all location', MaxLength = 100; + TunisiaAllTok: Label 'TUNISIA-ALL', MaxLength = 20, Locked = true; + TunisiaAllLocationLbl: Label 'Tunisia - all location', MaxLength = 100; + TurkiyeAllTok: Label 'TURKIYE-ALL', MaxLength = 20, Locked = true; + TurkiyeAllLocationLbl: Label 'Türkiye - all location', MaxLength = 100; + TanzaniaAllTok: Label 'TANZANIA-ALL', MaxLength = 20, Locked = true; + TanzaniaAllLocationLbl: Label 'Tanzania - all location', MaxLength = 100; + UgandaAllTok: Label 'UGANDA-ALL', MaxLength = 20, Locked = true; + UgandaAllLocationLbl: Label 'Uganda - all location', MaxLength = 100; + VanuatuAllTok: Label 'VANUATU-ALL', MaxLength = 20, Locked = true; + VanuatuAllLocationLbl: Label 'Vanuatu - all location', MaxLength = 100; + SamoaAllTok: Label 'SAMOA-ALL', MaxLength = 20, Locked = true; + SamoaAllLocationLbl: Label 'Samoa - all location', MaxLength = 100; + SouthAfricaAllTok: Label 'SOUTHAFRICA-ALL', MaxLength = 20, Locked = true; + SouthAfricaAllLocationLbl: Label 'South Africa - all location', MaxLength = 100; + AfghanistanAllTok: Label 'AFGHANISTAN-ALL', MaxLength = 20, Locked = true; + AfghanistanAllLocationLbl: Label 'Afghanistan - all location', MaxLength = 100; + AlbaniaAllTok: Label 'ALBANIA-ALL', MaxLength = 20, Locked = true; + AlbaniaAllLocationLbl: Label 'Albania - all location', MaxLength = 100; + AndorraAllTok: Label 'ANDORRA-ALL', MaxLength = 20, Locked = true; + AndorraAllLocationLbl: Label 'Andorra - all location', MaxLength = 100; + AngolaAllTok: Label 'ANGOLA-ALL', MaxLength = 20, Locked = true; + AngolaAllLocationLbl: Label 'Angola - all location', MaxLength = 100; + AnguillaAllTok: Label 'ANGUILLA-ALL', MaxLength = 20, Locked = true; + AnguillaAllLocationLbl: Label 'Anguilla - all location', MaxLength = 100; + AntarcticaAllTok: Label 'ANTARCTICA-ALL', MaxLength = 20, Locked = true; + AntarcticaAllLocationLbl: Label 'Antarctica - all location', MaxLength = 100; + AntiguaBarbudaAllTok: Label 'ANTIGUABARBUDA-ALL', MaxLength = 20, Locked = true; + AntiguaBarbudaAllLocationLbl: Label 'Antigua & Barbuda - all location', MaxLength = 100; + ArgentinaAllTok: Label 'ARGENTINA-ALL', MaxLength = 20, Locked = true; + ArgentinaAllLocationLbl: Label 'Argentina - all location', MaxLength = 100; + ArmeniaAllTok: Label 'ARMENIA-ALL', MaxLength = 20, Locked = true; + ArmeniaAllLocationLbl: Label 'Armenia - all location', MaxLength = 100; + ArubaAllTok: Label 'ARUBA-ALL', MaxLength = 20, Locked = true; + ArubaAllLocationLbl: Label 'Aruba - all location', MaxLength = 100; + AzerbaijanAllTok: Label 'AZERBAIJAN-ALL', MaxLength = 20, Locked = true; + AzerbaijanAllLocationLbl: Label 'Azerbaijan - all location', MaxLength = 100; + BahamasAllTok: Label 'BAHAMAS-ALL', MaxLength = 20, Locked = true; + BahamasAllLocationLbl: Label 'Bahamas - all location', MaxLength = 100; + BahrainAllTok: Label 'BAHRAIN-ALL', MaxLength = 20, Locked = true; + BahrainAllLocationLbl: Label 'Bahrain - all location', MaxLength = 100; + BangladeshAllTok: Label 'BANGLADESH-ALL', MaxLength = 20, Locked = true; + BangladeshAllLocationLbl: Label 'Bangladesh - all location', MaxLength = 100; + BarbadosAllTok: Label 'BARBADOS-ALL', MaxLength = 20, Locked = true; + BarbadosAllLocationLbl: Label 'Barbados - all location', MaxLength = 100; + BelarusAllTok: Label 'BELARUS-ALL', MaxLength = 20, Locked = true; + BelarusAllLocationLbl: Label 'Belarus - all location', MaxLength = 100; + BelizeAllTok: Label 'BELIZE-ALL', MaxLength = 20, Locked = true; + BelizeAllLocationLbl: Label 'Belize - all location', MaxLength = 100; + BeninAllTok: Label 'BENIN-ALL', MaxLength = 20, Locked = true; + BeninAllLocationLbl: Label 'Benin - all location', MaxLength = 100; + BermudaAllTok: Label 'BERMUDA-ALL', MaxLength = 20, Locked = true; + BermudaAllLocationLbl: Label 'Bermuda - all location', MaxLength = 100; + BhutanAllTok: Label 'BHUTAN-ALL', MaxLength = 20, Locked = true; + BhutanAllLocationLbl: Label 'Bhutan - all location', MaxLength = 100; + BoliviaAllTok: Label 'BOLIVIA-ALL', MaxLength = 20, Locked = true; + BoliviaAllLocationLbl: Label 'Bolivia - all location', MaxLength = 100; + BonaireAllTok: Label 'BONAIRE-ALL', MaxLength = 20, Locked = true; + BonaireAllLocationLbl: Label 'Bonaire, Sint Eustatius and Saba - all location', MaxLength = 100; + BosniaHerzegovinaAllTok: Label 'BOSNIAHERZEGOVIN-ALL', MaxLength = 20, Locked = true; + BosniaHerzegovinaAllLocationLbl: Label 'Bosnia & Herzegovina - all location', MaxLength = 100; + BotswanaAllTok: Label 'BOTSWANA-ALL', MaxLength = 20, Locked = true; + BotswanaAllLocationLbl: Label 'Botswana - all location', MaxLength = 100; + BouvetIslandAllTok: Label 'BOUVETISLAND-ALL', MaxLength = 20, Locked = true; + BouvetIslandAllLocationLbl: Label 'Bouvet Island - all location', MaxLength = 100; + BritishIndianOceanAllTok: Label 'BRITISHINDIANOCE-ALL', MaxLength = 20, Locked = true; + BritishIndianOceanAllLocationLbl: Label 'British Indian Ocean Territory - all location', MaxLength = 100; + BurkinaFasoAllTok: Label 'BURKINAFASO-ALL', MaxLength = 20, Locked = true; + BurkinaFasoAllLocationLbl: Label 'Burkina Faso - all location', MaxLength = 100; + BurundiAllTok: Label 'BURUNDI-ALL', MaxLength = 20, Locked = true; + BurundiAllLocationLbl: Label 'Burundi - all location', MaxLength = 100; + CaboVerdeAllTok: Label 'CABOVERDE-ALL', MaxLength = 20, Locked = true; + CaboVerdeAllLocationLbl: Label 'Cabo Verde - all location', MaxLength = 100; + CambodiaAllTok: Label 'CAMBODIA-ALL', MaxLength = 20, Locked = true; + CambodiaAllLocationLbl: Label 'Cambodia - all location', MaxLength = 100; + CameroonAllTok: Label 'CAMEROON-ALL', MaxLength = 20, Locked = true; + CameroonAllLocationLbl: Label 'Cameroon - all location', MaxLength = 100; + CaymanIslandsAllTok: Label 'CAYMANISLANDS-ALL', MaxLength = 20, Locked = true; + CaymanIslandsAllLocationLbl: Label 'Cayman Islands - all location', MaxLength = 100; + CentralAfricanAllTok: Label 'CENTRALAFRICAN-ALL', MaxLength = 20, Locked = true; + CentralAfricanAllLocationLbl: Label 'Central African Republic - all location', MaxLength = 100; + ChadAllTok: Label 'CHAD-ALL', MaxLength = 20, Locked = true; + ChadAllLocationLbl: Label 'Chad - all location', MaxLength = 100; + ChileAllTok: Label 'CHILE-ALL', MaxLength = 20, Locked = true; + ChileAllLocationLbl: Label 'Chile - all location', MaxLength = 100; + ChristmasIslandAllTok: Label 'CHRISTMASISLAND-ALL', MaxLength = 20, Locked = true; + ChristmasIslandAllLocationLbl: Label 'Christmas Island - all location', MaxLength = 100; + CocosIslandsAllTok: Label 'COCOSISLANDS-ALL', MaxLength = 20, Locked = true; + CocosIslandsAllLocationLbl: Label 'Cocos (Keeling) Islands - all location', MaxLength = 100; + ColombiaAllTok: Label 'COLOMBIA-ALL', MaxLength = 20, Locked = true; + ColombiaAllLocationLbl: Label 'Colombia - all location', MaxLength = 100; + ComorosAllTok: Label 'COMOROS-ALL', MaxLength = 20, Locked = true; + ComorosAllLocationLbl: Label 'Comoros - all location', MaxLength = 100; + CongoDRAllTok: Label 'CONGODR-ALL', MaxLength = 20, Locked = true; + CongoDRAllLocationLbl: Label 'Congo, Democratic Republic - all location', MaxLength = 100; + CongoAllTok: Label 'CONGO-ALL', MaxLength = 20, Locked = true; + CongoAllLocationLbl: Label 'Congo - all location', MaxLength = 100; + CookIslandsAllTok: Label 'COOKISLANDS-ALL', MaxLength = 20, Locked = true; + CookIslandsAllLocationLbl: Label 'Cook Islands - all location', MaxLength = 100; + CubaAllTok: Label 'CUBA-ALL', MaxLength = 20, Locked = true; + CubaAllLocationLbl: Label 'Cuba - all location', MaxLength = 100; + CuracaoAllTok: Label 'CURACAO-ALL', MaxLength = 20, Locked = true; + CuracaoAllLocationLbl: Label 'Curacao - all location', MaxLength = 100; + CotedIvoireAllTok: Label 'COTEDIVOIRE-ALL', MaxLength = 20, Locked = true; + CotedIvoireAllLocationLbl: Label 'Cote d''Ivoire - all location', MaxLength = 100; + DjiboutiAllTok: Label 'DJIBOUTI-ALL', MaxLength = 20, Locked = true; + DjiboutiAllLocationLbl: Label 'Djibouti - all location', MaxLength = 100; + DominicaAllTok: Label 'DOMINICA-ALL', MaxLength = 20, Locked = true; + DominicaAllLocationLbl: Label 'Dominica - all location', MaxLength = 100; + DominicanAllTok: Label 'DOMINICAN-ALL', MaxLength = 20, Locked = true; + DominicanAllLocationLbl: Label 'Dominican Republic - all location', MaxLength = 100; + EcuadorAllTok: Label 'ECUADOR-ALL', MaxLength = 20, Locked = true; + EcuadorAllLocationLbl: Label 'Ecuador - all location', MaxLength = 100; + EgyptAllTok: Label 'EGYPT-ALL', MaxLength = 20, Locked = true; + EgyptAllLocationLbl: Label 'Egypt - all location', MaxLength = 100; + ElSalvadorAllTok: Label 'ELSALVADOR-ALL', MaxLength = 20, Locked = true; + ElSalvadorAllLocationLbl: Label 'El Salvador - all location', MaxLength = 100; + EquatorialGuineaAllTok: Label 'EQUATORIALGUINEA-ALL', MaxLength = 20, Locked = true; + EquatorialGuineaAllLocationLbl: Label 'Equatorial Guinea - all location', MaxLength = 100; + EritreaAllTok: Label 'ERITREA-ALL', MaxLength = 20, Locked = true; + EritreaAllLocationLbl: Label 'Eritrea - all location', MaxLength = 100; + EthiopiaAllTok: Label 'ETHIOPIA-ALL', MaxLength = 20, Locked = true; + EthiopiaAllLocationLbl: Label 'Ethiopia - all location', MaxLength = 100; + FalklandIslandsAllTok: Label 'FALKLANDISLANDS-ALL', MaxLength = 20, Locked = true; + FalklandIslandsAllLocationLbl: Label 'Falkland Islands - all location', MaxLength = 100; + FaroeIslandsAllTok: Label 'FAROEISLANDS-ALL', MaxLength = 20, Locked = true; + FaroeIslandsAllLocationLbl: Label 'Faroe Islands - all location', MaxLength = 100; + FrenchGuianaAllTok: Label 'FRENCHGUIANA-ALL', MaxLength = 20, Locked = true; + FrenchGuianaAllLocationLbl: Label 'French Guiana - all location', MaxLength = 100; + FrenchPolynesiaAllTok: Label 'FRENCHPOLYNESIA-ALL', MaxLength = 20, Locked = true; + FrenchPolynesiaAllLocationLbl: Label 'French Polynesia - all location', MaxLength = 100; + FrenchSouthernAllTok: Label 'FRENCHSOUTHERN-ALL', MaxLength = 20, Locked = true; + FrenchSouthernAllLocationLbl: Label 'French Southern Territories - all location', MaxLength = 100; + GabonAllTok: Label 'GABON-ALL', MaxLength = 20, Locked = true; + GabonAllLocationLbl: Label 'Gabon - all location', MaxLength = 100; + GambiaAllTok: Label 'GAMBIA-ALL', MaxLength = 20, Locked = true; + GambiaAllLocationLbl: Label 'Gambia - all location', MaxLength = 100; + GeorgiaAllTok: Label 'GEORGIA-ALL', MaxLength = 20, Locked = true; + GeorgiaAllLocationLbl: Label 'Georgia - all location', MaxLength = 100; + GhanaAllTok: Label 'GHANA-ALL', MaxLength = 20, Locked = true; + GhanaAllLocationLbl: Label 'Ghana - all location', MaxLength = 100; + GibraltarAllTok: Label 'GIBRALTAR-ALL', MaxLength = 20, Locked = true; + GibraltarAllLocationLbl: Label 'Gibraltar - all location', MaxLength = 100; + GreenlandAllTok: Label 'GREENLAND-ALL', MaxLength = 20, Locked = true; + GreenlandAllLocationLbl: Label 'Greenland - all location', MaxLength = 100; + GrenadaAllTok: Label 'GRENADA-ALL', MaxLength = 20, Locked = true; + GrenadaAllLocationLbl: Label 'Grenada - all location', MaxLength = 100; + GuadeloupeAllTok: Label 'GUADELOUPE-ALL', MaxLength = 20, Locked = true; + GuadeloupeAllLocationLbl: Label 'Guadeloupe - all location', MaxLength = 100; + GuamAllTok: Label 'GUAM-ALL', MaxLength = 20, Locked = true; + GuamAllLocationLbl: Label 'Guam - all location', MaxLength = 100; + GuatemalaAllTok: Label 'GUATEMALA-ALL', MaxLength = 20, Locked = true; + GuatemalaAllLocationLbl: Label 'Guatemala - all location', MaxLength = 100; + GuernseyAllTok: Label 'GUERNSEY-ALL', MaxLength = 20, Locked = true; + GuernseyAllLocationLbl: Label 'Guernsey - all location', MaxLength = 100; + GuineaAllTok: Label 'GUINEA-ALL', MaxLength = 20, Locked = true; + GuineaAllLocationLbl: Label 'Guinea - all location', MaxLength = 100; + GuineaBissauAllTok: Label 'GUINEABISSAU-ALL', MaxLength = 20, Locked = true; + GuineaBissauAllLocationLbl: Label 'Guinea-Bissau - all location', MaxLength = 100; + GuyanaAllTok: Label 'GUYANA-ALL', MaxLength = 20, Locked = true; + GuyanaAllLocationLbl: Label 'Guyana - all location', MaxLength = 100; + HaitiAllTok: Label 'HAITI-ALL', MaxLength = 20, Locked = true; + HaitiAllLocationLbl: Label 'Haiti - all location', MaxLength = 100; + HeardIslandAllTok: Label 'HEARDISLAND-ALL', MaxLength = 20, Locked = true; + HeardIslandAllLocationLbl: Label 'Heard Island and McDonald Islands - all location', MaxLength = 100; + HolySeeAllTok: Label 'HOLYSEE-ALL', MaxLength = 20, Locked = true; + HolySeeAllLocationLbl: Label 'Vatican City - all location', MaxLength = 100; + HondurasAllTok: Label 'HONDURAS-ALL', MaxLength = 20, Locked = true; + HondurasAllLocationLbl: Label 'Honduras - all location', MaxLength = 100; + HongKongAllTok: Label 'HONGKONG-ALL', MaxLength = 20, Locked = true; + HongKongAllLocationLbl: Label 'Hong Kong SAR - all location', MaxLength = 100; + IsleManAllTok: Label 'ISLEMAN-ALL', MaxLength = 20, Locked = true; + IsleManAllLocationLbl: Label 'Isle of Man - all location', MaxLength = 100; + IsraelAllTok: Label 'ISRAEL-ALL', MaxLength = 20, Locked = true; + IsraelAllLocationLbl: Label 'Israel - all location', MaxLength = 100; + JamaicaAllTok: Label 'JAMAICA-ALL', MaxLength = 20, Locked = true; + JamaicaAllLocationLbl: Label 'Jamaica - all location', MaxLength = 100; + JerseyAllTok: Label 'JERSEY-ALL', MaxLength = 20, Locked = true; + JerseyAllLocationLbl: Label 'Jersey - all location', MaxLength = 100; + JordanAllTok: Label 'JORDAN-ALL', MaxLength = 20, Locked = true; + JordanAllLocationLbl: Label 'Jordan - all location', MaxLength = 100; + KazakhstanAllTok: Label 'KAZAKHSTAN-ALL', MaxLength = 20, Locked = true; + KazakhstanAllLocationLbl: Label 'Kazakhstan - all location', MaxLength = 100; + KiribatiAllTok: Label 'KIRIBATI-ALL', MaxLength = 20, Locked = true; + KiribatiAllLocationLbl: Label 'Kiribati - all location', MaxLength = 100; + NorthKoreaAllTok: Label 'NORTHKOREA-ALL', MaxLength = 20, Locked = true; + NorthKoreaAllLocationLbl: Label 'North Korea - all location', MaxLength = 100; + SouthKoreaAllTok: Label 'SOUTHKOREA-ALL', MaxLength = 20, Locked = true; + SouthKoreaAllLocationLbl: Label 'Korea - all location', MaxLength = 100; + KuwaitAllTok: Label 'KUWAIT-ALL', MaxLength = 20, Locked = true; + KuwaitAllLocationLbl: Label 'Kuwait - all location', MaxLength = 100; + KyrgyzstanAllTok: Label 'KYRGYZSTAN-ALL', MaxLength = 20, Locked = true; + KyrgyzstanAllLocationLbl: Label 'Kyrgyzstan - all location', MaxLength = 100; + LaosAllTok: Label 'LAOS-ALL', MaxLength = 20, Locked = true; + LaosAllLocationLbl: Label 'Laos - all location', MaxLength = 100; + LebanonAllTok: Label 'LEBANON-ALL', MaxLength = 20, Locked = true; + LebanonAllLocationLbl: Label 'Lebanon - all location', MaxLength = 100; + LesothoAllTok: Label 'LESOTHO-ALL', MaxLength = 20, Locked = true; + LesothoAllLocationLbl: Label 'Lesotho - all location', MaxLength = 100; + LiberiaAllTok: Label 'LIBERIA-ALL', MaxLength = 20, Locked = true; + LiberiaAllLocationLbl: Label 'Liberia - all location', MaxLength = 100; + LibyaAllTok: Label 'LIBYA-ALL', MaxLength = 20, Locked = true; + LibyaAllLocationLbl: Label 'Libya - all location', MaxLength = 100; + LiechtensteinAllTok: Label 'LIECHTENSTEIN-ALL', MaxLength = 20, Locked = true; + LiechtensteinAllLocationLbl: Label 'Liechtenstein - all location', MaxLength = 100; + MacaoAllTok: Label 'MACAO-ALL', MaxLength = 20, Locked = true; + MacaoAllLocationLbl: Label 'Macao - all location', MaxLength = 100; + MadagascarAllTok: Label 'MADAGASCAR-ALL', MaxLength = 20, Locked = true; + MadagascarAllLocationLbl: Label 'Madagascar - all location', MaxLength = 100; + MalawiAllTok: Label 'MALAWI-ALL', MaxLength = 20, Locked = true; + MalawiAllLocationLbl: Label 'Malawi - all location', MaxLength = 100; + MaldivesAllTok: Label 'MALDIVES-ALL', MaxLength = 20, Locked = true; + MaldivesAllLocationLbl: Label 'Maldives - all location', MaxLength = 100; + MaliAllTok: Label 'MALI-ALL', MaxLength = 20, Locked = true; + MaliAllLocationLbl: Label 'Mali - all location', MaxLength = 100; + MarshallIslandsAllTok: Label 'MARSHALLISLANDS-ALL', MaxLength = 20, Locked = true; + MarshallIslandsAllLocationLbl: Label 'Marshall Islands - all location', MaxLength = 100; + MartiniqueAllTok: Label 'MARTINIQUE-ALL', MaxLength = 20, Locked = true; + MartiniqueAllLocationLbl: Label 'Martinique - all location', MaxLength = 100; + MauritaniaAllTok: Label 'MAURITANIA-ALL', MaxLength = 20, Locked = true; + MauritaniaAllLocationLbl: Label 'Mauritania - all location', MaxLength = 100; + MauritiusAllTok: Label 'MAURITIUS-ALL', MaxLength = 20, Locked = true; + MauritiusAllLocationLbl: Label 'Mauritius - all location', MaxLength = 100; + MayotteAllTok: Label 'MAYOTTE-ALL', MaxLength = 20, Locked = true; + MayotteAllLocationLbl: Label 'Mayotte - all location', MaxLength = 100; + MicronesiaAllTok: Label 'MICRONESIA-ALL', MaxLength = 20, Locked = true; + MicronesiaAllLocationLbl: Label 'Micronesia - all location', MaxLength = 100; + MoldovaAllTok: Label 'MOLDOVA-ALL', MaxLength = 20, Locked = true; + MoldovaAllLocationLbl: Label 'Moldova - all location', MaxLength = 100; + MonacoAllTok: Label 'MONACO-ALL', MaxLength = 20, Locked = true; + MonacoAllLocationLbl: Label 'Monaco - all location', MaxLength = 100; + MongoliaAllTok: Label 'MONGOLIA-ALL', MaxLength = 20, Locked = true; + MongoliaAllLocationLbl: Label 'Mongolia - all location', MaxLength = 100; + MontserratAllTok: Label 'MONTSERRAT-ALL', MaxLength = 20, Locked = true; + MontserratAllLocationLbl: Label 'Montserrat - all location', MaxLength = 100; + MyanmarAllTok: Label 'MYANMAR-ALL', MaxLength = 20, Locked = true; + MyanmarAllLocationLbl: Label 'Myanmar - all location', MaxLength = 100; + NamibiaAllTok: Label 'NAMIBIA-ALL', MaxLength = 20, Locked = true; + NamibiaAllLocationLbl: Label 'Namibia - all location', MaxLength = 100; + NauruAllTok: Label 'NAURU-ALL', MaxLength = 20, Locked = true; + NauruAllLocationLbl: Label 'Nauru - all location', MaxLength = 100; + NepalAllTok: Label 'NEPAL-ALL', MaxLength = 20, Locked = true; + NepalAllLocationLbl: Label 'Nepal - all location', MaxLength = 100; + NewCaledoniaAllTok: Label 'NEWCALEDONIA-ALL', MaxLength = 20, Locked = true; + NewCaledoniaAllLocationLbl: Label 'New Caledonia - all location', MaxLength = 100; + NigerAllTok: Label 'NIGER-ALL', MaxLength = 20, Locked = true; + NigerAllLocationLbl: Label 'Niger - all location', MaxLength = 100; + NiueAllTok: Label 'NIUE-ALL', MaxLength = 20, Locked = true; + NiueAllLocationLbl: Label 'Niue - all location', MaxLength = 100; + NorfolkIslandAllTok: Label 'NORFOLKISLAND-ALL', MaxLength = 20, Locked = true; + NorfolkIslandAllLocationLbl: Label 'Norfolk Island - all location', MaxLength = 100; + NorthMacedoniaAllTok: Label 'NORTHMACEDONIA-ALL', MaxLength = 20, Locked = true; + NorthMacedoniaAllLocationLbl: Label 'North Macedonia - all location', MaxLength = 100; + NorthernMarianaAllTok: Label 'NORTHERNMARIANA-ALL', MaxLength = 20, Locked = true; + NorthernMarianaAllLocationLbl: Label 'Northern Mariana Islands - all location', MaxLength = 100; + OmanAllTok: Label 'OMAN-ALL', MaxLength = 20, Locked = true; + OmanAllLocationLbl: Label 'Oman - all location', MaxLength = 100; + PakistanAllTok: Label 'PAKISTAN-ALL', MaxLength = 20, Locked = true; + PakistanAllLocationLbl: Label 'Pakistan - all location', MaxLength = 100; + PalauAllTok: Label 'PALAU-ALL', MaxLength = 20, Locked = true; + PalauAllLocationLbl: Label 'Palau - all location', MaxLength = 100; + PalestineAllTok: Label 'PALESTINE-ALL', MaxLength = 20, Locked = true; + PalestineAllLocationLbl: Label 'Palestine - all location', MaxLength = 100; + PanamaAllTok: Label 'PANAMA-ALL', MaxLength = 20, Locked = true; + PanamaAllLocationLbl: Label 'Panama - all location', MaxLength = 100; + PapuaNewGuineaAllTok: Label 'PAPUANEWGUINEA-ALL', MaxLength = 20, Locked = true; + PapuaNewGuineaAllLocationLbl: Label 'Papua New Guinea - all location', MaxLength = 100; + ParaguayAllTok: Label 'PARAGUAY-ALL', MaxLength = 20, Locked = true; + ParaguayAllLocationLbl: Label 'Paraguay - all location', MaxLength = 100; + PeruAllTok: Label 'PERU-ALL', MaxLength = 20, Locked = true; + PeruAllLocationLbl: Label 'Peru - all location', MaxLength = 100; + PitcairnAllTok: Label 'PITCAIRN-ALL', MaxLength = 20, Locked = true; + PitcairnAllLocationLbl: Label 'Pitcairn Islands - all location', MaxLength = 100; + PuertoRicoAllTok: Label 'PUERTORICO-ALL', MaxLength = 20, Locked = true; + PuertoRicoAllLocationLbl: Label 'Puerto Rico - all location', MaxLength = 100; + QatarAllTok: Label 'QATAR-ALL', MaxLength = 20, Locked = true; + QatarAllLocationLbl: Label 'Qatar - all location', MaxLength = 100; + RwandaAllTok: Label 'RWANDA-ALL', MaxLength = 20, Locked = true; + RwandaAllLocationLbl: Label 'Rwanda - all location', MaxLength = 100; + ReunionAllTok: Label 'REUNION-ALL', MaxLength = 20, Locked = true; + ReunionAllLocationLbl: Label 'Reunion - all location', MaxLength = 100; + SaintBarthelemyAllTok: Label 'SAINTBARTHELEMY-ALL', MaxLength = 20, Locked = true; + SaintBarthelemyAllLocationLbl: Label 'Saint Barthelemy - all location', MaxLength = 100; + SaintHelenaAllTok: Label 'SAINTHELENA-ALL', MaxLength = 20, Locked = true; + SaintHelenaAllLocationLbl: Label 'St Helena, Ascension, Tristan da Cunha - all location', MaxLength = 100; + SaintKittsNevisAllTok: Label 'SAINTKITTSNEVIS-ALL', MaxLength = 20, Locked = true; + SaintKittsNevisAllLocationLbl: Label 'St. Kitts & Nevis - all location', MaxLength = 100; + SaintLuciaAllTok: Label 'SAINTLUCIA-ALL', MaxLength = 20, Locked = true; + SaintLuciaAllLocationLbl: Label 'St. Lucia - all location', MaxLength = 100; + SaintMartinAllTok: Label 'SAINTMARTIN-ALL', MaxLength = 20, Locked = true; + SaintMartinAllLocationLbl: Label 'Saint Martin - all location', MaxLength = 100; + SaintPierreQuelonAllTok: Label 'SAINTPIERREQUELO-ALL', MaxLength = 20, Locked = true; + SaintPierreQuelonAllLocationLbl: Label 'St. Pierre & Miquelon - all location', MaxLength = 100; + SaintVincentAllTok: Label 'SAINTVINCENT-ALL', MaxLength = 20, Locked = true; + SaintVincentAllLocationLbl: Label 'St. Vincent & Grenadines - all location', MaxLength = 100; + SanMarinoAllTok: Label 'SANMARINO-ALL', MaxLength = 20, Locked = true; + SanMarinoAllLocationLbl: Label 'San Marino - all location', MaxLength = 100; + SaoTomeAllTok: Label 'SAOTOME-ALL', MaxLength = 20, Locked = true; + SaoTomeAllLocationLbl: Label 'Sao Tome & Principe - all location', MaxLength = 100; + SenegalAllTok: Label 'SENEGAL-ALL', MaxLength = 20, Locked = true; + SenegalAllLocationLbl: Label 'Senegal - all location', MaxLength = 100; + SeychellesAllTok: Label 'SEYCHELLES-ALL', MaxLength = 20, Locked = true; + SeychellesAllLocationLbl: Label 'Seychelles - all location', MaxLength = 100; + SierraLeoneAllTok: Label 'SIERRALEONE-ALL', MaxLength = 20, Locked = true; + SierraLeoneAllLocationLbl: Label 'Sierra Leone - all location', MaxLength = 100; + SintMaartenAllTok: Label 'SINTMAARTEN-ALL', MaxLength = 20, Locked = true; + SintMaartenAllLocationLbl: Label 'Sint Maarten - all location', MaxLength = 100; + SomaliaAllTok: Label 'SOMALIA-ALL', MaxLength = 20, Locked = true; + SomaliaAllLocationLbl: Label 'Somalia - all location', MaxLength = 100; + SouthGeorgiaAllTok: Label 'SOUTHGEORGIA-ALL', MaxLength = 20, Locked = true; + SouthGeorgiaAllLocationLbl: Label 'South Georgia and South Sandwich Islands - all location', MaxLength = 100; + SouthSudanAllTok: Label 'SOUTHSUDAN-ALL', MaxLength = 20, Locked = true; + SouthSudanAllLocationLbl: Label 'South Sudan - all location', MaxLength = 100; + SriLankaAllTok: Label 'SRILANKA-ALL', MaxLength = 20, Locked = true; + SriLankaAllLocationLbl: Label 'Sri Lanka - all location', MaxLength = 100; + SudanAllTok: Label 'SUDAN-ALL', MaxLength = 20, Locked = true; + SudanAllLocationLbl: Label 'Sudan - all location', MaxLength = 100; + SurinameAllTok: Label 'SURINAME-ALL', MaxLength = 20, Locked = true; + SurinameAllLocationLbl: Label 'Suriname - all location', MaxLength = 100; + SvalbardJanMayenAllTok: Label 'SVALBARDJANMAYEN-ALL', MaxLength = 20, Locked = true; + SvalbardJanMayenAllLocationLbl: Label 'Svalbard & Jan Mayen - all location', MaxLength = 100; + SyriaAllTok: Label 'SYRIA-ALL', MaxLength = 20, Locked = true; + SyriaAllLocationLbl: Label 'Syria - all location', MaxLength = 100; + TaiwanAllTok: Label 'TAIWAN-ALL', MaxLength = 20, Locked = true; + TaiwanAllLocationLbl: Label 'Taiwan - all location', MaxLength = 100; + TajikistanAllTok: Label 'TAJIKISTAN-ALL', MaxLength = 20, Locked = true; + TajikistanAllLocationLbl: Label 'Tajikistan - all location', MaxLength = 100; + TimorLesteAllTok: Label 'TIMORLESTE-ALL', MaxLength = 20, Locked = true; + TimorLesteAllLocationLbl: Label 'Timor-Leste - all location', MaxLength = 100; + TogoAllTok: Label 'TOGO-ALL', MaxLength = 20, Locked = true; + TogoAllLocationLbl: Label 'Togo - all location', MaxLength = 100; + TokelauAllTok: Label 'TOKELAU-ALL', MaxLength = 20, Locked = true; + TokelauAllLocationLbl: Label 'Tokelau - all location', MaxLength = 100; + TongaAllTok: Label 'TONGA-ALL', MaxLength = 20, Locked = true; + TongaAllLocationLbl: Label 'Tonga - all location', MaxLength = 100; + TrinidadTobagoAllTok: Label 'TRINIDADTOBAGO-ALL', MaxLength = 20, Locked = true; + TrinidadTobagoAllLocationLbl: Label 'Trinidad & Tobago - all location', MaxLength = 100; + TurkmenistanAllTok: Label 'TURKMENISTAN-ALL', MaxLength = 20, Locked = true; + TurkmenistanAllLocationLbl: Label 'Turkmenistan - all location', MaxLength = 100; + TurksCalcosAllTok: Label 'TURKSCALCOS-ALL', MaxLength = 20, Locked = true; + TurksCalcosAllLocationLbl: Label 'Turks & Caicos Islands - all location', MaxLength = 100; + TuvaluAllTok: Label 'TUVALU-ALL', MaxLength = 20, Locked = true; + TuvaluAllLocationLbl: Label 'Tuvalu - all location', MaxLength = 100; + UkraineAllTok: Label 'UKRAINE-ALL', MaxLength = 20, Locked = true; + UkraineAllLocationLbl: Label 'Ukraine - all location', MaxLength = 100; + USMinorOutlyingAllTok: Label 'USMINOROUTLYING-ALL', MaxLength = 20, Locked = true; + USMinorOutlyingAllLocationLbl: Label 'U.S. Minor Outlying Islands - all location', MaxLength = 100; + UruguayAllTok: Label 'URUGUAY-ALL', MaxLength = 20, Locked = true; + UruguayAllLocationLbl: Label 'Uruguay - all location', MaxLength = 100; + UzbekistanAllTok: Label 'UZBEKISTAN-ALL', MaxLength = 20, Locked = true; + UzbekistanAllLocationLbl: Label 'Uzbekistan - all location', MaxLength = 100; + VenezuelAllTok: Label 'VENEZUEL-ALL', MaxLength = 20, Locked = true; + VenezuelAllLocationLbl: Label 'Venezuela - all location', MaxLength = 100; + VietnamAllTok: Label 'VIETNAM-ALL', MaxLength = 20, Locked = true; + VietnamAllLocationLbl: Label 'Vietnam - all location', MaxLength = 100; + VirginIslandsBrAllTok: Label 'VIRGINISLANDSBR-ALL', MaxLength = 20, Locked = true; + VirginIslandsBrAllLocationLbl: Label 'British Virgin Islands - all location', MaxLength = 100; + VirginIslandsUSAllTok: Label 'VIRGINISLANDSUS-ALL', MaxLength = 20, Locked = true; + VirginIslandsUSAllLocationLbl: Label 'U.S. Virgin Islands - all location', MaxLength = 100; + WallisatunaAllTok: Label 'WALLISATUNA-ALL', MaxLength = 20, Locked = true; + WallisatunaAllLocationLbl: Label 'Wallis & Futuna - all location', MaxLength = 100; + WesternSaharaAllTok: Label 'WESTERNSAHARA-ALL', MaxLength = 20, Locked = true; + WesternSaharaAllLocationLbl: Label 'Western Sahara - all location', MaxLength = 100; + YemenAllTok: Label 'YEMEN-ALL', MaxLength = 20, Locked = true; + YemenAllLocationLbl: Label 'Yemen - all location', MaxLength = 100; + ZambiaAllTok: Label 'ZAMBIA-ALL', MaxLength = 20, Locked = true; + ZambiaAllLocationLbl: Label 'Zambia - all location', MaxLength = 100; + ZimbabweAllTok: Label 'ZIMBABWE-ALL', MaxLength = 20, Locked = true; + ZimbabweAllLocationLbl: Label 'Zimbabwe - all location', MaxLength = 100; + AlandIslandsAllTok: Label 'ALANDISLANDS-ALL', MaxLength = 20, Locked = true; + AlandIslandsAllLocationLbl: Label 'Aland Islands - all location', MaxLength = 100; - procedure CanadaAll(): Code[20] + procedure UnitedArabEmiratesAll(): Code[20] begin - exit(CanadaAllTok); + exit(UnitedArabEmiratesAllTok); end; - procedure DenmarkAll(): Code[20] + procedure AustriaAll(): Code[20] begin - exit(DenmarkAllTok); + exit(AustriaAllTok); end; - procedure Domestic(): Code[20] + procedure AustraliaAll(): Code[20] begin - exit(DomesticTok); + exit(AustraliaAllTok); end; - procedure FranceAll(): Code[20] + procedure BelgiumAll(): Code[20] begin - exit(FranceAllTok); + exit(BelgiumAllTok); + end; + + procedure BulgariaAll(): Code[20] + begin + exit(BulgariaAllTok); + end; + + procedure BruneiDarussalamAll(): Code[20] + begin + exit(BruneiDarussalamAllTok); + end; + + procedure BrazilAll(): Code[20] + begin + exit(BrazilAllTok); + end; + + procedure SwitzerlandAll(): Code[20] + begin + exit(SwitzerlandAllTok); + end; + + procedure SwitzerlandGeneva(): Code[20] + begin + exit(SwitzerlandGenevaTok); + end; + + procedure SwitzerlandZurich(): Code[20] + begin + exit(SwitzerlandZurichTok); + end; + + procedure ChinaAll(): Code[20] + begin + exit(ChinaAllTok); + end; + + procedure CostaRicaAll(): Code[20] + begin + exit(CostaRicaAllTok); + end; + + procedure CyprusAll(): Code[20] + begin + exit(CyprusAllTok); + end; + + procedure CzechiaAll(): Code[20] + begin + exit(CzechiaAllTok); + end; + + procedure AlgeriaAll(): Code[20] + begin + exit(AlgeriaAllTok); + end; + + procedure EstoniaAll(): Code[20] + begin + exit(EstoniaAllTok); + end; + + procedure GreeceAll(): Code[20] + begin + exit(GreeceAllTok); + end; + + procedure SpainAll(): Code[20] + begin + exit(SpainAllTok); + end; + + procedure FinlandAll(): Code[20] + begin + exit(FinlandAllTok); + end; + + procedure FijiIslandsAll(): Code[20] + begin + exit(FijiIslandsAllTok); + end; + + procedure GreatBritainAll(): Code[20] + begin + exit(GreatBritainAllTok); + end; + + procedure CroatiaAll(): Code[20] + begin + exit(CroatiaAllTok); + end; + + procedure HungaryAll(): Code[20] + begin + exit(HungaryAllTok); + end; + + procedure IndonesiaAll(): Code[20] + begin + exit(IndonesiaAllTok); + end; + + procedure IrelandAll(): Code[20] + begin + exit(IrelandAllTok); + end; + + procedure IndiaAll(): Code[20] + begin + exit(IndiaAllTok); + end; + + procedure IcelandAll(): Code[20] + begin + exit(IcelandAllTok); + end; + + procedure ItalyAll(): Code[20] + begin + exit(ItalyAllTok); + end; + + procedure JapanAll(): Code[20] + begin + exit(JapanAllTok); + end; + + procedure JapanTokyo(): Code[20] + begin + exit(JapanTokyoTok); + end; + + procedure KenyaAll(): Code[20] + begin + exit(KenyaAllTok); + end; + + procedure LithuaniaAll(): Code[20] + begin + exit(LithuaniaAllTok); + end; + + procedure LuxembourgAll(): Code[20] + begin + exit(LuxembourgAllTok); + end; + + procedure LatviaAll(): Code[20] + begin + exit(LatviaAllTok); + end; + + procedure MoroccoAll(): Code[20] + begin + exit(MoroccoAllTok); + end; + + procedure MontenegroAll(): Code[20] + begin + exit(MontenegroAllTok); + end; + + procedure MaltaAll(): Code[20] + begin + exit(MaltaAllTok); + end; + + procedure MexicoAll(): Code[20] + begin + exit(MexicoAllTok); + end; + + procedure MalaysiaAll(): Code[20] + begin + exit(MalaysiaAllTok); + end; + + procedure MozambiqueAll(): Code[20] + begin + exit(MozambiqueAllTok); + end; + + procedure NigeriaAll(): Code[20] + begin + exit(NigeriaAllTok); + end; + + procedure NorthernIrelandAll(): Code[20] + begin + exit(NorthernIrelandAllTok); + end; + + procedure NetherlandsAll(): Code[20] + begin + exit(NetherlandsAllTok); + end; + + procedure NorwayAll(): Code[20] + begin + exit(NorwayAllTok); + end; + + procedure NorwayOslo(): Code[20] + begin + exit(NorwayOsloTok); + end; + + procedure NewZealandAll(): Code[20] + begin + exit(NewZealandAllTok); + end; + + procedure PhilippinesAll(): Code[20] + begin + exit(PhilippinesAllTok); + end; + + procedure PolandAll(): Code[20] + begin + exit(PolandAllTok); + end; + + procedure PortugalAll(): Code[20] + begin + exit(PortugalAllTok); + end; + + procedure RomaniaAll(): Code[20] + begin + exit(RomaniaAllTok); + end; + + procedure SerbiaAll(): Code[20] + begin + exit(SerbiaAllTok); + end; + + procedure RussiaAll(): Code[20] + begin + exit(RussiaAllTok); + end; + + procedure SaudiArabiaAll(): Code[20] + begin + exit(SaudiArabiaAllTok); + end; + + procedure SolomonIslandsAll(): Code[20] + begin + exit(SolomonIslandsAllTok); + end; + + procedure SwedenAll(): Code[20] + begin + exit(SwedenAllTok); + end; + + procedure SingaporeAll(): Code[20] + begin + exit(SingaporeAllTok); + end; + + procedure SloveniaAll(): Code[20] + begin + exit(SloveniaAllTok); + end; + + procedure SlovakiaAll(): Code[20] + begin + exit(SlovakiaAllTok); + end; + + procedure SwazilandAll(): Code[20] + begin + exit(SwazilandAllTok); + end; + + procedure ThailandAll(): Code[20] + begin + exit(ThailandAllTok); + end; + + procedure TunisiaAll(): Code[20] + begin + exit(TunisiaAllTok); + end; + + procedure TurkiyeAll(): Code[20] + begin + exit(TurkiyeAllTok); + end; + + procedure TanzaniaAll(): Code[20] + begin + exit(TanzaniaAllTok); + end; + + procedure UgandaAll(): Code[20] + begin + exit(UgandaAllTok); + end; + + procedure VanuatuAll(): Code[20] + begin + exit(VanuatuAllTok); + end; + + procedure SamoaAll(): Code[20] + begin + exit(SamoaAllTok); + end; + + procedure SouthAfricaAll(): Code[20] + begin + exit(SouthAfricaAllTok); + end; + + procedure AfghanistanAll(): Code[20] + begin + exit(AfghanistanAllTok); + end; + + procedure AlbaniaAll(): Code[20] + begin + exit(AlbaniaAllTok); + end; + + procedure AndorraAll(): Code[20] + begin + exit(AndorraAllTok); + end; + + procedure AngolaAll(): Code[20] + begin + exit(AngolaAllTok); + end; + + procedure AnguillaAll(): Code[20] + begin + exit(AnguillaAllTok); + end; + + procedure AntarcticaAll(): Code[20] + begin + exit(AntarcticaAllTok); + end; + + procedure AntiguaBarbudaAll(): Code[20] + begin + exit(AntiguaBarbudaAllTok); + end; + + procedure ArgentinaAll(): Code[20] + begin + exit(ArgentinaAllTok); + end; + + procedure ArmeniaAll(): Code[20] + begin + exit(ArmeniaAllTok); + end; + + procedure ArubaAll(): Code[20] + begin + exit(ArubaAllTok); + end; + + procedure AzerbaijanAll(): Code[20] + begin + exit(AzerbaijanAllTok); + end; + + procedure BahamasAll(): Code[20] + begin + exit(BahamasAllTok); + end; + + procedure BahrainAll(): Code[20] + begin + exit(BahrainAllTok); + end; + + procedure BangladeshAll(): Code[20] + begin + exit(BangladeshAllTok); + end; + + procedure BarbadosAll(): Code[20] + begin + exit(BarbadosAllTok); + end; + + procedure BelarusAll(): Code[20] + begin + exit(BelarusAllTok); + end; + + procedure BelizeAll(): Code[20] + begin + exit(BelizeAllTok); + end; + + procedure BeninAll(): Code[20] + begin + exit(BeninAllTok); + end; + + procedure BermudaAll(): Code[20] + begin + exit(BermudaAllTok); + end; + + procedure BhutanAll(): Code[20] + begin + exit(BhutanAllTok); + end; + + procedure BoliviaAll(): Code[20] + begin + exit(BoliviaAllTok); + end; + + procedure BonaireAll(): Code[20] + begin + exit(BonaireAllTok); + end; + + procedure BosniaHerzegovinaAll(): Code[20] + begin + exit(BosniaHerzegovinaAllTok); + end; + + procedure BotswanaAll(): Code[20] + begin + exit(BotswanaAllTok); + end; + + procedure BouvetIslandAll(): Code[20] + begin + exit(BouvetIslandAllTok); + end; + + procedure BritishIndianOceanAll(): Code[20] + begin + exit(BritishIndianOceanAllTok); + end; + + procedure BurkinaFasoAll(): Code[20] + begin + exit(BurkinaFasoAllTok); + end; + + procedure BurundiAll(): Code[20] + begin + exit(BurundiAllTok); + end; + + procedure CaboVerdeAll(): Code[20] + begin + exit(CaboVerdeAllTok); + end; + + procedure CambodiaAll(): Code[20] + begin + exit(CambodiaAllTok); + end; + + procedure CameroonAll(): Code[20] + begin + exit(CameroonAllTok); + end; + + procedure CaymanIslandsAll(): Code[20] + begin + exit(CaymanIslandsAllTok); + end; + + procedure CentralAfricanAll(): Code[20] + begin + exit(CentralAfricanAllTok); + end; + + procedure ChadAll(): Code[20] + begin + exit(ChadAllTok); + end; + + procedure ChileAll(): Code[20] + begin + exit(ChileAllTok); + end; + + procedure ChristmasIslandAll(): Code[20] + begin + exit(ChristmasIslandAllTok); + end; + + procedure CocosIslandsAll(): Code[20] + begin + exit(CocosIslandsAllTok); + end; + + procedure ColombiaAll(): Code[20] + begin + exit(ColombiaAllTok); + end; + + procedure ComorosAll(): Code[20] + begin + exit(ComorosAllTok); + end; + + procedure CongoDRAll(): Code[20] + begin + exit(CongoDRAllTok); + end; + + procedure CongoAll(): Code[20] + begin + exit(CongoAllTok); + end; + + procedure CookIslandsAll(): Code[20] + begin + exit(CookIslandsAllTok); + end; + + procedure CubaAll(): Code[20] + begin + exit(CubaAllTok); + end; + + procedure CuracaoAll(): Code[20] + begin + exit(CuracaoAllTok); + end; + + procedure CotedIvoireAll(): Code[20] + begin + exit(CotedIvoireAllTok); + end; + + procedure DjiboutiAll(): Code[20] + begin + exit(DjiboutiAllTok); + end; + + procedure DominicaAll(): Code[20] + begin + exit(DominicaAllTok); + end; + + procedure DominicanAll(): Code[20] + begin + exit(DominicanAllTok); + end; + + procedure EcuadorAll(): Code[20] + begin + exit(EcuadorAllTok); + end; + + procedure EgyptAll(): Code[20] + begin + exit(EgyptAllTok); + end; + + procedure ElSalvadorAll(): Code[20] + begin + exit(ElSalvadorAllTok); + end; + + procedure EquatorialGuineaAll(): Code[20] + begin + exit(EquatorialGuineaAllTok); + end; + + procedure EritreaAll(): Code[20] + begin + exit(EritreaAllTok); + end; + + procedure EthiopiaAll(): Code[20] + begin + exit(EthiopiaAllTok); + end; + + procedure FalklandIslandsAll(): Code[20] + begin + exit(FalklandIslandsAllTok); + end; + + procedure FaroeIslandsAll(): Code[20] + begin + exit(FaroeIslandsAllTok); + end; + + procedure FrenchGuianaAll(): Code[20] + begin + exit(FrenchGuianaAllTok); + end; + + procedure FrenchPolynesiaAll(): Code[20] + begin + exit(FrenchPolynesiaAllTok); + end; + + procedure FrenchSouthernAll(): Code[20] + begin + exit(FrenchSouthernAllTok); + end; + + procedure GabonAll(): Code[20] + begin + exit(GabonAllTok); + end; + + procedure GambiaAll(): Code[20] + begin + exit(GambiaAllTok); + end; + + procedure GeorgiaAll(): Code[20] + begin + exit(GeorgiaAllTok); + end; + + procedure GhanaAll(): Code[20] + begin + exit(GhanaAllTok); + end; + + procedure GibraltarAll(): Code[20] + begin + exit(GibraltarAllTok); + end; + + procedure GreenlandAll(): Code[20] + begin + exit(GreenlandAllTok); + end; + + procedure GrenadaAll(): Code[20] + begin + exit(GrenadaAllTok); + end; + + procedure GuadeloupeAll(): Code[20] + begin + exit(GuadeloupeAllTok); + end; + + procedure GuamAll(): Code[20] + begin + exit(GuamAllTok); + end; + + procedure GuatemalaAll(): Code[20] + begin + exit(GuatemalaAllTok); + end; + + procedure GuernseyAll(): Code[20] + begin + exit(GuernseyAllTok); + end; + + procedure GuineaAll(): Code[20] + begin + exit(GuineaAllTok); + end; + + procedure GuineaBissauAll(): Code[20] + begin + exit(GuineaBissauAllTok); + end; + + procedure GuyanaAll(): Code[20] + begin + exit(GuyanaAllTok); + end; + + procedure HaitiAll(): Code[20] + begin + exit(HaitiAllTok); + end; + + procedure HeardIslandAll(): Code[20] + begin + exit(HeardIslandAllTok); + end; + + procedure HolySeeAll(): Code[20] + begin + exit(HolySeeAllTok); + end; + + procedure HondurasAll(): Code[20] + begin + exit(HondurasAllTok); + end; + + procedure HongKongAll(): Code[20] + begin + exit(HongKongAllTok); + end; + + procedure IsleManAll(): Code[20] + begin + exit(IsleManAllTok); + end; + + procedure IsraelAll(): Code[20] + begin + exit(IsraelAllTok); + end; + + procedure JamaicaAll(): Code[20] + begin + exit(JamaicaAllTok); + end; + + procedure JerseyAll(): Code[20] + begin + exit(JerseyAllTok); + end; + + procedure JordanAll(): Code[20] + begin + exit(JordanAllTok); + end; + + procedure KazakhstanAll(): Code[20] + begin + exit(KazakhstanAllTok); + end; + + procedure KiribatiAll(): Code[20] + begin + exit(KiribatiAllTok); + end; + + procedure NorthKoreaAll(): Code[20] + begin + exit(NorthKoreaAllTok); + end; + + procedure SouthKoreaAll(): Code[20] + begin + exit(SouthKoreaAllTok); + end; + + procedure KuwaitAll(): Code[20] + begin + exit(KuwaitAllTok); + end; + + procedure KyrgyzstanAll(): Code[20] + begin + exit(KyrgyzstanAllTok); + end; + + procedure LaosAll(): Code[20] + begin + exit(LaosAllTok); + end; + + procedure LebanonAll(): Code[20] + begin + exit(LebanonAllTok); + end; + + procedure LesothoAll(): Code[20] + begin + exit(LesothoAllTok); + end; + + procedure LiberiaAll(): Code[20] + begin + exit(LiberiaAllTok); + end; + + procedure LibyaAll(): Code[20] + begin + exit(LibyaAllTok); + end; + + procedure LiechtensteinAll(): Code[20] + begin + exit(LiechtensteinAllTok); + end; + + procedure MacaoAll(): Code[20] + begin + exit(MacaoAllTok); + end; + + procedure MadagascarAll(): Code[20] + begin + exit(MadagascarAllTok); + end; + + procedure MalawiAll(): Code[20] + begin + exit(MalawiAllTok); + end; + + procedure MaldivesAll(): Code[20] + begin + exit(MaldivesAllTok); + end; + + procedure MaliAll(): Code[20] + begin + exit(MaliAllTok); + end; + + procedure MarshallIslandsAll(): Code[20] + begin + exit(MarshallIslandsAllTok); + end; + + procedure MartiniqueAll(): Code[20] + begin + exit(MartiniqueAllTok); + end; + + procedure MauritaniaAll(): Code[20] + begin + exit(MauritaniaAllTok); + end; + + procedure MauritiusAll(): Code[20] + begin + exit(MauritiusAllTok); + end; + + procedure MayotteAll(): Code[20] + begin + exit(MayotteAllTok); + end; + + procedure MicronesiaAll(): Code[20] + begin + exit(MicronesiaAllTok); + end; + + procedure MoldovaAll(): Code[20] + begin + exit(MoldovaAllTok); + end; + + procedure MonacoAll(): Code[20] + begin + exit(MonacoAllTok); + end; + + procedure MongoliaAll(): Code[20] + begin + exit(MongoliaAllTok); + end; + + procedure MontserratAll(): Code[20] + begin + exit(MontserratAllTok); + end; + + procedure MyanmarAll(): Code[20] + begin + exit(MyanmarAllTok); + end; + + procedure NamibiaAll(): Code[20] + begin + exit(NamibiaAllTok); + end; + + procedure NauruAll(): Code[20] + begin + exit(NauruAllTok); + end; + + procedure NepalAll(): Code[20] + begin + exit(NepalAllTok); + end; + + procedure NewCaledoniaAll(): Code[20] + begin + exit(NewCaledoniaAllTok); + end; + + procedure NigerAll(): Code[20] + begin + exit(NigerAllTok); + end; + + procedure NiueAll(): Code[20] + begin + exit(NiueAllTok); + end; + + procedure NorfolkIslandAll(): Code[20] + begin + exit(NorfolkIslandAllTok); + end; + + procedure NorthMacedoniaAll(): Code[20] + begin + exit(NorthMacedoniaAllTok); + end; + + procedure NorthernMarianaAll(): Code[20] + begin + exit(NorthernMarianaAllTok); + end; + + procedure OmanAll(): Code[20] + begin + exit(OmanAllTok); + end; + + procedure PakistanAll(): Code[20] + begin + exit(PakistanAllTok); + end; + + procedure PalauAll(): Code[20] + begin + exit(PalauAllTok); + end; + + procedure PalestineAll(): Code[20] + begin + exit(PalestineAllTok); + end; + + procedure PanamaAll(): Code[20] + begin + exit(PanamaAllTok); + end; + + procedure PapuaNewGuineaAll(): Code[20] + begin + exit(PapuaNewGuineaAllTok); + end; + + procedure ParaguayAll(): Code[20] + begin + exit(ParaguayAllTok); + end; + + procedure PeruAll(): Code[20] + begin + exit(PeruAllTok); + end; + + procedure PitcairnAll(): Code[20] + begin + exit(PitcairnAllTok); + end; + + procedure PuertoRicoAll(): Code[20] + begin + exit(PuertoRicoAllTok); + end; + + procedure QatarAll(): Code[20] + begin + exit(QatarAllTok); + end; + + procedure RwandaAll(): Code[20] + begin + exit(RwandaAllTok); + end; + + procedure ReunionAll(): Code[20] + begin + exit(ReunionAllTok); + end; + + procedure SaintBarthelemyAll(): Code[20] + begin + exit(SaintBarthelemyAllTok); + end; + + procedure SaintHelenaAll(): Code[20] + begin + exit(SaintHelenaAllTok); + end; + + procedure SaintKittsNevisAll(): Code[20] + begin + exit(SaintKittsNevisAllTok); + end; + + procedure SaintLuciaAll(): Code[20] + begin + exit(SaintLuciaAllTok); + end; + + procedure SaintMartinAll(): Code[20] + begin + exit(SaintMartinAllTok); + end; + + procedure SaintPierreQuelonAll(): Code[20] + begin + exit(SaintPierreQuelonAllTok); + end; + + procedure SaintVincentAll(): Code[20] + begin + exit(SaintVincentAllTok); + end; + + procedure SanMarinoAll(): Code[20] + begin + exit(SanMarinoAllTok); + end; + + procedure SaoTomeAll(): Code[20] + begin + exit(SaoTomeAllTok); + end; + + procedure SenegalAll(): Code[20] + begin + exit(SenegalAllTok); + end; + + procedure SeychellesAll(): Code[20] + begin + exit(SeychellesAllTok); + end; + + procedure SierraLeoneAll(): Code[20] + begin + exit(SierraLeoneAllTok); + end; + + procedure SintMaartenAll(): Code[20] + begin + exit(SintMaartenAllTok); + end; + + procedure SomaliaAll(): Code[20] + begin + exit(SomaliaAllTok); + end; + + procedure SouthGeorgiaAll(): Code[20] + begin + exit(SouthGeorgiaAllTok); + end; + + procedure SouthSudanAll(): Code[20] + begin + exit(SouthSudanAllTok); + end; + + procedure SriLankaAll(): Code[20] + begin + exit(SriLankaAllTok); + end; + + procedure SudanAll(): Code[20] + begin + exit(SudanAllTok); + end; + + procedure SurinameAll(): Code[20] + begin + exit(SurinameAllTok); + end; + + procedure SvalbardJanMayenAll(): Code[20] + begin + exit(SvalbardJanMayenAllTok); + end; + + procedure SyriaAll(): Code[20] + begin + exit(SyriaAllTok); + end; + + procedure TaiwanAll(): Code[20] + begin + exit(TaiwanAllTok); + end; + + procedure TajikistanAll(): Code[20] + begin + exit(TajikistanAllTok); + end; + + procedure TimorLesteAll(): Code[20] + begin + exit(TimorLesteAllTok); + end; + + procedure TogoAll(): Code[20] + begin + exit(TogoAllTok); + end; + + procedure TokelauAll(): Code[20] + begin + exit(TokelauAllTok); + end; + + procedure TongaAll(): Code[20] + begin + exit(TongaAllTok); + end; + + procedure TrinidadTobagoAll(): Code[20] + begin + exit(TrinidadTobagoAllTok); + end; + + procedure TurkmenistanAll(): Code[20] + begin + exit(TurkmenistanAllTok); + end; + + procedure TurksCalcosAll(): Code[20] + begin + exit(TurksCalcosAllTok); + end; + + procedure TuvaluAll(): Code[20] + begin + exit(TuvaluAllTok); + end; + + procedure UkraineAll(): Code[20] + begin + exit(UkraineAllTok); + end; + + procedure USMinorOutlyingAll(): Code[20] + begin + exit(USMinorOutlyingAllTok); + end; + + procedure UruguayAll(): Code[20] + begin + exit(UruguayAllTok); + end; + + procedure UzbekistanAll(): Code[20] + begin + exit(UzbekistanAllTok); + end; + + procedure VenezuelAll(): Code[20] + begin + exit(VenezuelAllTok); + end; + + procedure VietnamAll(): Code[20] + begin + exit(VietnamAllTok); + end; + + procedure VirginIslandsBrAll(): Code[20] + begin + exit(VirginIslandsBrAllTok); + end; + + procedure VirginIslandsUSAll(): Code[20] + begin + exit(VirginIslandsUSAllTok); + end; + + procedure WallisatunaAll(): Code[20] + begin + exit(WallisatunaAllTok); + end; + + procedure WesternSaharaAll(): Code[20] + begin + exit(WesternSaharaAllTok); + end; + + procedure YemenAll(): Code[20] + begin + exit(YemenAllTok); + end; + + procedure ZambiaAll(): Code[20] + begin + exit(ZambiaAllTok); + end; + + procedure ZimbabweAll(): Code[20] + begin + exit(ZimbabweAllTok); + end; + + procedure AlandIslandsAll(): Code[20] + begin + exit(AlandIslandsAllTok); + end; + + procedure CanadaAll(): Code[20] + begin + exit(CanadaAllTok); + end; + + procedure DenmarkAll(): Code[20] + begin + exit(DenmarkAllTok); + end; + + procedure DenmarkCph(): Code[20] + begin + exit(DenmarkCphTok); + end; + + procedure Domestic(): Code[20] + begin + exit(DomesticTok); + end; + + procedure FranceAll(): Code[20] + begin + exit(FranceAllTok); + end; + + procedure FranceParis(): Code[20] + begin + exit(FranceParisTok); end; procedure GermanyAll(): Code[20] diff --git a/src/Apps/W1/ExpenseAgent/demo data/Demo Data/2.Master Data/CreateExpenseRuleCondition.Codeunit.al b/src/Apps/W1/ExpenseAgent/demo data/Demo Data/2.Master Data/CreateExpenseRuleCondition.Codeunit.al index 3ef608b79c2..354c29bccee 100644 --- a/src/Apps/W1/ExpenseAgent/demo data/Demo Data/2.Master Data/CreateExpenseRuleCondition.Codeunit.al +++ b/src/Apps/W1/ExpenseAgent/demo data/Demo Data/2.Master Data/CreateExpenseRuleCondition.Codeunit.al @@ -12,10 +12,268 @@ codeunit 8213 "Create Expense Rule Condition" trigger OnRun() var CreateExpenseCategories: Codeunit "Create Expense Categories DM"; + CreateExpenseLocation: Codeunit "Create Expense Location"; ContosoExpenseAgent: Codeunit "Contoso Expense Agent"; begin ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.Entertain(), '', 0D, 10000, Enum::"Expense Rule Condition Type"::"At Least Justification Needed", 500); ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.Entertain(), '', 0D, 20000, Enum::"Expense Rule Condition Type"::"Max Amount", 1000); ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.Mileage(), '', 0D, 10000, Enum::"Expense Rule Condition Type"::"Max Amount", 300); + ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.UnitedArabEmiratesAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); + ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.AustriaAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); + ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.AustraliaAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); + ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.BelgiumAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); + ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.BulgariaAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); + ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.BruneiDarussalamAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); + ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.BrazilAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); + ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.SwitzerlandAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); + ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.SwitzerlandGeneva(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); + ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.SwitzerlandGeneva(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); + ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.ChinaAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); + ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.CostaRicaAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); + ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.CyprusAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); + ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.CzechiaAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); + ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.AlgeriaAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); + ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.EstoniaAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); + ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.GreeceAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); + ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.SpainAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); + ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.FinlandAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); + ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.FijiIslandsAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); + ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.GreatBritainAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); + ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.CroatiaAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); + ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.HungaryAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); + ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.IndonesiaAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); + ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.IrelandAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); + ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.IndiaAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); + ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.IcelandAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); + ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.ItalyAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); + ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.JapanAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); + ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.JapanTokyo(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); + ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.KenyaAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); + ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.LithuaniaAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); + ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.LuxembourgAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); + ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.LatviaAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); + ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.MoroccoAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); + ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.MontenegroAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); + ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.MaltaAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); + ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.MexicoAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); + ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.MalaysiaAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); + ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.MozambiqueAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); + ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.NigeriaAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); + ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.NorthernIrelandAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); + ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.NetherlandsAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); + ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.NorwayAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); + ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.NorwayOslo(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); + ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.NewZealandAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); + ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.PhilippinesAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); + ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.PolandAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); + ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.PortugalAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); + ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.RomaniaAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); + ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.SerbiaAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); + ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.RussiaAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); + ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.SaudiArabiaAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); + ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.SolomonIslandsAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); + ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.SwedenAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); + ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.SingaporeAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); + ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.SloveniaAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); + ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.SlovakiaAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); + ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.SwazilandAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); + ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.ThailandAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); + ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.TunisiaAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); + ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.TurkiyeAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); + ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.TanzaniaAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); + ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.UgandaAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); + ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.VanuatuAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); + ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.SamoaAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); + ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.SouthAfricaAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); + ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.AfghanistanAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); + ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.AlbaniaAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); + ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.AndorraAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); + ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.AngolaAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); + ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.AnguillaAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); + ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.AntarcticaAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); + ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.AntiguaBarbudaAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); + ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.ArgentinaAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); + ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.ArmeniaAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); + ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.ArubaAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); + ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.AzerbaijanAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); + ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.BahamasAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); + ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.BahrainAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); + ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.BangladeshAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); + ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.BarbadosAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); + ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.BelarusAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); + ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.BelizeAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); + ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.BeninAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); + ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.BermudaAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); + ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.BhutanAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); + ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.BoliviaAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); + ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.BonaireAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); + ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.BosniaHerzegovinaAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); + ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.BotswanaAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); + ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.BouvetIslandAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); + ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.BritishIndianOceanAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); + ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.BurkinaFasoAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); + ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.BurundiAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); + ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.CaboVerdeAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); + ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.CambodiaAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); + ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.CameroonAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); + ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.CaymanIslandsAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); + ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.CentralAfricanAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); + ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.ChadAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); + ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.ChileAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); + ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.ChristmasIslandAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); + ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.CocosIslandsAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); + ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.ColombiaAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); + ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.ComorosAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); + ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.CongoDRAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); + ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.CongoAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); + ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.CookIslandsAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); + ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.CubaAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); + ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.CuracaoAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); + ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.CotedIvoireAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); + ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.DjiboutiAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); + ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.DominicaAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); + ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.DominicanAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); + ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.EcuadorAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); + ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.EgyptAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); + ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.ElSalvadorAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); + ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.EquatorialGuineaAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); + ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.EritreaAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); + ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.EthiopiaAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); + ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.FalklandIslandsAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); + ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.FaroeIslandsAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); + ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.FrenchGuianaAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); + ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.FrenchPolynesiaAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); + ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.FrenchSouthernAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); + ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.GabonAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); + ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.GambiaAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); + ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.GeorgiaAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); + ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.GhanaAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); + ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.GibraltarAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); + ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.GreenlandAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); + ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.GrenadaAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); + ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.GuadeloupeAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); + ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.GuamAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); + ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.GuatemalaAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); + ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.GuernseyAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); + ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.GuineaAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); + ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.GuineaBissauAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); + ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.GuyanaAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); + ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.HaitiAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); + ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.HeardIslandAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); + ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.HolySeeAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); + ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.HondurasAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); + ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.HongKongAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); + ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.IsleManAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); + ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.IsraelAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); + ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.JamaicaAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); + ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.JerseyAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); + ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.JordanAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); + ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.KazakhstanAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); + ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.KiribatiAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); + ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.NorthKoreaAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); + ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.SouthKoreaAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); + ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.KuwaitAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); + ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.KyrgyzstanAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); + ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.LaosAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); + ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.LebanonAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); + ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.LesothoAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); + ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.LiberiaAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); + ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.LibyaAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); + ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.LiechtensteinAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); + ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.MacaoAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); + ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.MadagascarAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); + ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.MalawiAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); + ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.MaldivesAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); + ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.MaliAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); + ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.MarshallIslandsAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); + ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.MartiniqueAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); + ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.MauritaniaAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); + ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.MauritiusAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); + ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.MayotteAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); + ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.MicronesiaAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); + ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.MoldovaAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); + ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.MonacoAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); + ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.MongoliaAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); + ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.MontserratAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); + ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.MyanmarAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); + ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.NamibiaAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); + ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.NauruAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); + ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.NepalAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); + ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.NewCaledoniaAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); + ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.NigerAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); + ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.NiueAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); + ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.NorfolkIslandAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); + ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.NorthMacedoniaAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); + ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.NorthernMarianaAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); + ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.OmanAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); + ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.PakistanAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); + ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.PalauAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); + ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.PalestineAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); + ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.PanamaAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); + ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.PapuaNewGuineaAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); + ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.ParaguayAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); + ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.PeruAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); + ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.PitcairnAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); + ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.PuertoRicoAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); + ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.QatarAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); + ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.RwandaAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); + ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.ReunionAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); + ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.SaintBarthelemyAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); + ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.SaintHelenaAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); + ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.SaintKittsNevisAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); + ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.SaintLuciaAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); + ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.SaintMartinAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); + ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.SaintPierreQuelonAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); + ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.SaintVincentAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); + ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.SanMarinoAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); + ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.SaoTomeAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); + ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.SenegalAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); + ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.SeychellesAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); + ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.SierraLeoneAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); + ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.SintMaartenAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); + ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.SomaliaAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); + ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.SouthGeorgiaAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); + ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.SouthSudanAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); + ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.SriLankaAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); + ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.SudanAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); + ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.SurinameAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); + ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.SvalbardJanMayenAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); + ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.SyriaAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); + ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.TaiwanAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); + ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.TajikistanAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); + ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.TimorLesteAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); + ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.TogoAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); + ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.TokelauAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); + ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.TongaAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); + ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.TrinidadTobagoAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); + ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.TurkmenistanAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); + ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.TurksCalcosAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); + ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.TuvaluAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); + ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.UkraineAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); + ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.USMinorOutlyingAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); + ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.UruguayAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); + ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.UzbekistanAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); + ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.VenezuelAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); + ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.VietnamAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); + ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.VirginIslandsBrAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); + ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.VirginIslandsUSAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); + ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.WallisatunaAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); + ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.WesternSaharaAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); + ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.YemenAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); + ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.ZambiaAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); + ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.ZimbabweAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); + ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.AlandIslandsAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); + ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.CanadaAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); + ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.DenmarkAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); + ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.DenmarkCph(), 0D, 20000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); + ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.Domestic(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); + ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.FranceAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); + ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.FranceParis(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); + ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.GermanyAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); + ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.UKLondon(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); + ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.UKOther(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); + ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.USAFlorida(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); + ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.USANY(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); + ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.USAOther(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); end; } \ No newline at end of file diff --git a/src/Apps/W1/ExpenseAgent/demo data/Demo Data/2.Master Data/CreateExpenseRuleHeader.Codeunit.al b/src/Apps/W1/ExpenseAgent/demo data/Demo Data/2.Master Data/CreateExpenseRuleHeader.Codeunit.al index 5c7c5ab9cf4..e90793e9ec0 100644 --- a/src/Apps/W1/ExpenseAgent/demo data/Demo Data/2.Master Data/CreateExpenseRuleHeader.Codeunit.al +++ b/src/Apps/W1/ExpenseAgent/demo data/Demo Data/2.Master Data/CreateExpenseRuleHeader.Codeunit.al @@ -12,11 +12,270 @@ codeunit 8212 "Create Expense Rule Header" trigger OnRun() var CreateExpenseCategories: Codeunit "Create Expense Categories DM"; + CreateExpenseLocation: Codeunit "Create Expense Location"; ContosoExpenseAgent: Codeunit "Contoso Expense Agent"; begin ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.Entertain(), '', 0D, Enum::"Expense Justification"::"Against Conditions", false, '', '', ''); ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.Hotels(), '', 0D, Enum::"Expense Justification"::" ", false, '', '', ''); ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.Mileage(), '', 0D, Enum::"Expense Justification"::" ", false, '', '', ''); ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.Morale(), '', 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + + ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.UnitedArabEmiratesAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.AustriaAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.AustraliaAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.BelgiumAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.BulgariaAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.BruneiDarussalamAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.BrazilAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.SwitzerlandAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.SwitzerlandGeneva(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.SwitzerlandZurich(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.ChinaAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.CostaRicaAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.CyprusAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.CzechiaAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.AlgeriaAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.EstoniaAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.GreeceAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.SpainAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.FinlandAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.FijiIslandsAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.GreatBritainAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.CroatiaAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.HungaryAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.IndonesiaAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.IrelandAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.IndiaAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.IcelandAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.ItalyAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.JapanAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.JapanTokyo(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.KenyaAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.LithuaniaAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.LuxembourgAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.LatviaAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.MoroccoAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.MontenegroAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.MaltaAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.MexicoAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.MalaysiaAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.MozambiqueAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.NigeriaAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.NorthernIrelandAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.NetherlandsAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.NorwayAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.NorwayOslo(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.NewZealandAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.PhilippinesAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.PolandAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.PortugalAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.RomaniaAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.SerbiaAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.RussiaAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.SaudiArabiaAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.SolomonIslandsAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.SwedenAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.SingaporeAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.SloveniaAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.SlovakiaAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.SwazilandAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.ThailandAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.TunisiaAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.TurkiyeAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.TanzaniaAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.UgandaAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.VanuatuAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.SamoaAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.SouthAfricaAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.AfghanistanAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.AlbaniaAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.AndorraAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.AngolaAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.AnguillaAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.AntarcticaAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.AntiguaBarbudaAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.ArgentinaAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.ArmeniaAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.ArubaAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.AzerbaijanAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.BahamasAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.BahrainAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.BangladeshAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.BarbadosAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.BelarusAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.BelizeAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.BeninAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.BermudaAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.BhutanAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.BoliviaAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.BonaireAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.BosniaHerzegovinaAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.BotswanaAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.BouvetIslandAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.BritishIndianOceanAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.BurkinaFasoAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.BurundiAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.CaboVerdeAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.CambodiaAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.CameroonAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.CaymanIslandsAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.CentralAfricanAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.ChadAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.ChileAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.ChristmasIslandAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.CocosIslandsAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.ColombiaAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.ComorosAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.CongoDRAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.CongoAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.CookIslandsAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.CubaAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.CuracaoAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.CotedIvoireAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.DjiboutiAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.DominicaAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.DominicanAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.EcuadorAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.EgyptAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.ElSalvadorAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.EquatorialGuineaAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.EritreaAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.EthiopiaAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.FalklandIslandsAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.FaroeIslandsAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.FrenchGuianaAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.FrenchPolynesiaAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.FrenchSouthernAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.GabonAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.GambiaAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.GeorgiaAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.GhanaAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.GibraltarAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.GreenlandAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.GrenadaAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.GuadeloupeAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.GuamAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.GuatemalaAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.GuernseyAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.GuineaAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.GuineaBissauAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.GuyanaAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.HaitiAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.HeardIslandAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.HolySeeAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.HondurasAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.HongKongAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.IsleManAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.IsraelAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.JamaicaAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.JerseyAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.JordanAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.KazakhstanAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.KiribatiAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.NorthKoreaAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.SouthKoreaAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.KuwaitAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.KyrgyzstanAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.LaosAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.LebanonAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.LesothoAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.LiberiaAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.LibyaAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.LiechtensteinAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.MacaoAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.MadagascarAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.MalawiAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.MaldivesAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.MaliAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.MarshallIslandsAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.MartiniqueAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.MauritaniaAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.MauritiusAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.MayotteAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.MicronesiaAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.MoldovaAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.MonacoAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.MongoliaAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.MontserratAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.MyanmarAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.NamibiaAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.NauruAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.NepalAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.NewCaledoniaAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.NigerAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.NiueAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.NorfolkIslandAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.NorthMacedoniaAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.NorthernMarianaAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.OmanAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.PakistanAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.PalauAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.PalestineAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.PanamaAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.PapuaNewGuineaAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.ParaguayAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.PeruAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.PitcairnAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.PuertoRicoAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.QatarAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.RwandaAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.ReunionAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.SaintBarthelemyAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.SaintHelenaAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.SaintKittsNevisAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.SaintLuciaAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.SaintMartinAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.SaintPierreQuelonAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.SaintVincentAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.SanMarinoAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.SaoTomeAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.SenegalAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.SeychellesAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.SierraLeoneAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.SintMaartenAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.SomaliaAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.SouthGeorgiaAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.SouthSudanAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.SriLankaAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.SudanAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.SurinameAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.SvalbardJanMayenAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.SyriaAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.TaiwanAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.TajikistanAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.TimorLesteAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.TogoAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.TokelauAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.TongaAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.TrinidadTobagoAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.TurkmenistanAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.TurksCalcosAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.TuvaluAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.UkraineAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.USMinorOutlyingAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.UruguayAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.UzbekistanAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.VenezuelAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.VietnamAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.VirginIslandsBrAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.VirginIslandsUSAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.WallisatunaAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.WesternSaharaAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.YemenAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.ZambiaAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.ZimbabweAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.AlandIslandsAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.CanadaAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.DenmarkAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.DenmarkCph(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.Domestic(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.FranceAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.FranceParis(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.GermanyAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.UKLondon(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.UKOther(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.USAFlorida(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.USANY(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.USAOther(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); end; } \ No newline at end of file From 01a726af13b939a0c4145e75a719e070ad1bc50a Mon Sep 17 00:00:00 2001 From: Bardur Knudsen Date: Thu, 13 Aug 2026 17:27:16 +0200 Subject: [PATCH 02/28] More expense locations --- src/Apps/W1/ExpenseAgent/app/app.json | 6 +- .../APIs/ExpAttachBufferHandler.Codeunit.al | 4 +- .../app/src/Expense/Tables/Expense.Table.al | 2 +- .../ExpenseAgentObjects.PermissionSet.al | 2 +- .../CreateExpenseCategories.Codeunit.al | 72 +-- .../CreateExpenseLocation.Codeunit.al | 554 +++++++++--------- .../CreateExpenseRuleCondition.Codeunit.al | 298 ++++++++++ .../CreateExpenseRuleHeader.Codeunit.al | 301 ++++++++++ .../Pages/ExpenseAgentSetupWizard.Page.al | 2 +- .../CreateExpenseRuleCondition.Codeunit.al | 279 --------- .../CreateExpenseRuleHeader.Codeunit.al | 281 --------- .../ContosoExpenseAgent.Codeunit.al | 2 +- 12 files changed, 920 insertions(+), 883 deletions(-) rename src/Apps/W1/ExpenseAgent/{demo data/Demo Data/2.Master Data => app/src/Setup/Codeunits}/CreateExpenseLocation.Codeunit.al (70%) create mode 100644 src/Apps/W1/ExpenseAgent/app/src/Setup/Codeunits/CreateExpenseRuleCondition.Codeunit.al create mode 100644 src/Apps/W1/ExpenseAgent/app/src/Setup/Codeunits/CreateExpenseRuleHeader.Codeunit.al delete mode 100644 src/Apps/W1/ExpenseAgent/demo data/Demo Data/2.Master Data/CreateExpenseRuleCondition.Codeunit.al delete mode 100644 src/Apps/W1/ExpenseAgent/demo data/Demo Data/2.Master Data/CreateExpenseRuleHeader.Codeunit.al diff --git a/src/Apps/W1/ExpenseAgent/app/app.json b/src/Apps/W1/ExpenseAgent/app/app.json index fadf16fcbc8..bdc8ba5084e 100644 --- a/src/Apps/W1/ExpenseAgent/app/app.json +++ b/src/Apps/W1/ExpenseAgent/app/app.json @@ -134,7 +134,11 @@ }, { "from": 7073, - "to": 7103 + "to": 7105 + }, + { + "from": 7107, + "to": 7107 } ], "features": [ diff --git a/src/Apps/W1/ExpenseAgent/app/src/APIs/ExpAttachBufferHandler.Codeunit.al b/src/Apps/W1/ExpenseAgent/app/src/APIs/ExpAttachBufferHandler.Codeunit.al index dd85d5110e4..d7be635ef87 100644 --- a/src/Apps/W1/ExpenseAgent/app/src/APIs/ExpAttachBufferHandler.Codeunit.al +++ b/src/Apps/W1/ExpenseAgent/app/src/APIs/ExpAttachBufferHandler.Codeunit.al @@ -135,7 +135,7 @@ codeunit 6952 "Exp. Attach. Buffer Handler" end; // Split filename into name and extension - DocumentAttachment.Validate("File Extension", FileManagement.GetExtension(AttachmentEntityBuffer."File Name")); + DocumentAttachment.Validate("File Extension", CopyStr(FileManagement.GetExtension(AttachmentEntityBuffer."File Name"), 1, MaxStrLen(DocumentAttachment."File Extension"))); DocumentAttachment.Validate("File Name", CopyStr(FileManagement.GetFileNameWithoutExtension(AttachmentEntityBuffer."File Name"), 1, MaxStrLen(DocumentAttachment."File Name"))); BindSubscription(ExpDocAttSubscribers); @@ -164,7 +164,7 @@ codeunit 6952 "Exp. Attach. Buffer Handler" if HasRegisteredField(AttachmentEntityBuffer.FieldNo("File Name"), TempFieldBuffer) then begin ExpenseAttachmentMgt.RestrictAttachment(DocumentAttachment); - DocumentAttachment.Validate("File Extension", FileManagement.GetExtension(AttachmentEntityBuffer."File Name")); + DocumentAttachment.Validate("File Extension", CopyStr(FileManagement.GetExtension(AttachmentEntityBuffer."File Name"), 1, MaxStrLen(DocumentAttachment."File Extension"))); DocumentAttachment.Validate("File Name", CopyStr(FileManagement.GetFileNameWithoutExtension(AttachmentEntityBuffer."File Name"), 1, MaxStrLen(DocumentAttachment."File Name"))); ModifyRecord := true; end; diff --git a/src/Apps/W1/ExpenseAgent/app/src/Expense/Tables/Expense.Table.al b/src/Apps/W1/ExpenseAgent/app/src/Expense/Tables/Expense.Table.al index 0661c3eb9dd..8c15ea61d5b 100644 --- a/src/Apps/W1/ExpenseAgent/app/src/Expense/Tables/Expense.Table.al +++ b/src/Apps/W1/ExpenseAgent/app/src/Expense/Tables/Expense.Table.al @@ -334,7 +334,7 @@ table 6900 Expense CreateDimFromDefaultDim(Rec.FieldNo("Billable to Customer")); end; } - field(23; "Expense Location"; Code[30]) + field(23; "Expense Location"; Code[20]) { Caption = 'Expense Location'; TableRelation = "Expense Location"; diff --git a/src/Apps/W1/ExpenseAgent/app/src/Permissions/AgentUserPermissions/ExpenseAgentObjects.PermissionSet.al b/src/Apps/W1/ExpenseAgent/app/src/Permissions/AgentUserPermissions/ExpenseAgentObjects.PermissionSet.al index 06eea4d3891..99a360e5e60 100644 --- a/src/Apps/W1/ExpenseAgent/app/src/Permissions/AgentUserPermissions/ExpenseAgentObjects.PermissionSet.al +++ b/src/Apps/W1/ExpenseAgent/app/src/Permissions/AgentUserPermissions/ExpenseAgentObjects.PermissionSet.al @@ -122,7 +122,6 @@ permissionset 6952 "Expense Agent - Objects" codeunit "Expense Attachment Mgt." = X, codeunit "Expense Auto Population" = X, codeunit "Expense Capabilities Provider" = X, - codeunit "Expense Projects Builder" = X, codeunit "Expense Consumption Handler" = X, codeunit "Expense Currency" = X, codeunit "Expense Doc No Visibility" = X, @@ -135,6 +134,7 @@ permissionset 6952 "Expense Agent - Objects" codeunit "Expense Report-Post" = X, codeunit "Expense Preview Post Instance" = X, codeunit "Expense Preview Post Mgt." = X, + codeunit "Expense Projects Builder" = X, codeunit "Expense Report" = X, codeunit "Expense Report Approval Mgmt" = X, codeunit "Expense Report Batch Post Mgt." = X, diff --git a/src/Apps/W1/ExpenseAgent/app/src/Setup/Codeunits/CreateExpenseCategories.Codeunit.al b/src/Apps/W1/ExpenseAgent/app/src/Setup/Codeunits/CreateExpenseCategories.Codeunit.al index 05b2c49c9ff..252dae3c09c 100644 --- a/src/Apps/W1/ExpenseAgent/app/src/Setup/Codeunits/CreateExpenseCategories.Codeunit.al +++ b/src/Apps/W1/ExpenseAgent/app/src/Setup/Codeunits/CreateExpenseCategories.Codeunit.al @@ -449,6 +449,16 @@ codeunit 6973 "Create Expense Categories" exit(XMEALSTxt); end; + internal procedure GetMileageTxt(): Code[20] + begin + exit(XMILEAGETxt); + end; + + internal procedure GetMoraleTxt(): Code[20] + begin + exit(XMORALETxt); + end; + internal procedure GetAIRLINETxt(): Code[20] begin exit(XAIRLINETxt); @@ -706,14 +716,7 @@ codeunit 6973 "Create Expense Categories" begin TempExpenseLocation.Reset(); TempExpenseLocation.DeleteAll(); - - AddLocationSeed(TempExpenseLocation, XCANADAALLTxt, 'CA', 'Canada - All'); - AddLocationSeed(TempExpenseLocation, XDENMARKALLTxt, 'DK', 'Denmark - All'); - AddLocationSeed(TempExpenseLocation, XDOMESTICTxt, '', 'Domestic'); - AddLocationSeed(TempExpenseLocation, XFRANCEALLTxt, 'FR', 'France - All'); - AddLocationSeed(TempExpenseLocation, XGERMANYALLTxt, 'DE', 'Germany - All'); - AddLocationSeed(TempExpenseLocation, XUKOTHERTxt, 'GB', 'United Kingdom - Other'); - AddLocationSeed(TempExpenseLocation, XUSAOTHERTxt, 'US', 'United States - Other'); + Codeunit.Run(Codeunit::"Create Expense Location", TempExpenseLocation); end; /// @@ -759,15 +762,6 @@ codeunit 6973 "Create Expense Categories" exit(not TempExpenseLocation.IsEmpty()); end; - local procedure AddLocationSeed(var TempExpenseLocation: Record "Expense Location" temporary; LocationNo: Code[20]; CountryRegionCode: Code[10]; Description: Text[100]) - begin - TempExpenseLocation.Init(); - TempExpenseLocation."No." := LocationNo; - TempExpenseLocation."Country/Region Code" := CountryRegionCode; - TempExpenseLocation.Description := Description; - TempExpenseLocation.Insert(); - end; - internal procedure InsertDefaultManagementRules() var TempRuleHeaderSeed: Record "Expense Rule Header" temporary; @@ -817,17 +811,7 @@ codeunit 6973 "Create Expense Categories" TempRuleHeader.Reset(); TempRuleHeader.DeleteAll(); - AddRuleSeed(TempRuleHeader, XENTERTAINTxt, '', '', "Expense Justification"::"Against Conditions"); - AddRuleSeed(TempRuleHeader, XHOTELSTxt, '', '', "Expense Justification"::" "); - AddRuleSeed(TempRuleHeader, XMILEAGETxt, '', '', "Expense Justification"::" "); - AddRuleSeed(TempRuleHeader, XMORALETxt, '', '', "Expense Justification"::" "); - AddRuleSeed(TempRuleHeader, XPERDIEMTxt, XCANADAALLTxt, 'CAD', "Expense Justification"::" "); - AddRuleSeed(TempRuleHeader, XPERDIEMTxt, XDENMARKALLTxt, 'EUR', "Expense Justification"::" "); - AddRuleSeed(TempRuleHeader, XPERDIEMTxt, XDOMESTICTxt, 'USD', "Expense Justification"::" "); - AddRuleSeed(TempRuleHeader, XPERDIEMTxt, XFRANCEALLTxt, 'EUR', "Expense Justification"::" "); - AddRuleSeed(TempRuleHeader, XPERDIEMTxt, XGERMANYALLTxt, 'EUR', "Expense Justification"::" "); - AddRuleSeed(TempRuleHeader, XPERDIEMTxt, XUKOTHERTxt, 'GBP', "Expense Justification"::" "); - AddRuleSeed(TempRuleHeader, XPERDIEMTxt, XUSAOTHERTxt, 'USD', "Expense Justification"::" "); + Codeunit.Run(Codeunit::"Create Expense Rule Header", TempRuleHeader); OnAfterBuildRuleSeeds(TempRuleHeader); end; @@ -840,16 +824,7 @@ codeunit 6973 "Create Expense Categories" TempRuleCondition.Reset(); TempRuleCondition.DeleteAll(); - AddRuleConditionSeed(TempRuleCondition, XENTERTAINTxt, '', "Expense Rule Condition Type"::"At Least Justification Needed", 500); - AddRuleConditionSeed(TempRuleCondition, XENTERTAINTxt, '', "Expense Rule Condition Type"::"Max Amount", 1000); - AddRuleConditionSeed(TempRuleCondition, XMILEAGETxt, '', "Expense Rule Condition Type"::"Max Amount", 300); - AddRuleConditionSeed(TempRuleCondition, XPERDIEMTxt, XCANADAALLTxt, "Expense Rule Condition Type"::"Daily Rate", 125); - AddRuleConditionSeed(TempRuleCondition, XPERDIEMTxt, XDENMARKALLTxt, "Expense Rule Condition Type"::"Daily Rate", 450); - AddRuleConditionSeed(TempRuleCondition, XPERDIEMTxt, XDOMESTICTxt, "Expense Rule Condition Type"::"Daily Rate", 50); - AddRuleConditionSeed(TempRuleCondition, XPERDIEMTxt, XFRANCEALLTxt, "Expense Rule Condition Type"::"Daily Rate", 110); - AddRuleConditionSeed(TempRuleCondition, XPERDIEMTxt, XGERMANYALLTxt, "Expense Rule Condition Type"::"Daily Rate", 105); - AddRuleConditionSeed(TempRuleCondition, XPERDIEMTxt, XUKOTHERTxt, "Expense Rule Condition Type"::"Daily Rate", 115); - AddRuleConditionSeed(TempRuleCondition, XPERDIEMTxt, XUSAOTHERTxt, "Expense Rule Condition Type"::"Daily Rate", 120); + Codeunit.Run(Codeunit::"Create Expense Rule Condition", TempRuleCondition); OnAfterBuildRuleConditionSeeds(TempRuleCondition); end; @@ -978,11 +953,11 @@ codeunit 6973 "Create Expense Categories" local procedure InsertDefaultExpenseGroups() begin - InsertExpenseGroup(XTRAVELTxt, 'Travel Expenses'); - InsertExpenseGroup(XDAYEXPENSETxt, 'Day-to-Day Expenses'); - InsertExpenseGroup(XFOODBEVERAGETxt, 'Food & Beverage Expenses'); - InsertExpenseGroup(XPERSONALTxt, 'Personal Expenses'); - InsertExpenseGroup(XPREPAYMENTTxt, 'Prepayments - Cash Advance'); + InsertExpenseGroup(XTRAVELTxt, XTravelExpensesDescTxt); + InsertExpenseGroup(XDAYEXPENSETxt, XDayToDayExpensesDescTxt); + InsertExpenseGroup(XFOODBEVERAGETxt, XFoodBeverageExpensesDescTxt); + InsertExpenseGroup(XPERSONALTxt, XPersonalExpensesGroupDescTxt); + InsertExpenseGroup(XPREPAYMENTTxt, XPrepaymentsCashAdvanceGroupDescTxt); end; var @@ -1247,6 +1222,11 @@ codeunit 6973 "Create Expense Categories" XTRAVELTxt: Label 'TRAVEL', Locked = true; XDAYEXPENSETxt: Label 'DAY-EXPENSE', Locked = true; XFOODBEVERAGETxt: Label 'FOOD-BEVERAGE', Locked = true; + XTravelExpensesDescTxt: Label 'Travel Expenses', MaxLength = 50; + XDayToDayExpensesDescTxt: Label 'Day-to-Day Expenses', MaxLength = 50; + XFoodBeverageExpensesDescTxt: Label 'Food & Beverage Expenses', MaxLength = 50; + XPersonalExpensesGroupDescTxt: Label 'Personal Expenses', MaxLength = 50; + XPrepaymentsCashAdvanceGroupDescTxt: Label 'Prepayments - Cash Advance', MaxLength = 50; XCASHTxt: Label 'CASH', Locked = true; XCARDTxt: Label 'CARD', Locked = true; XCANADAALLTxt: Label 'CANADA-ALL', Locked = true; @@ -1258,7 +1238,7 @@ codeunit 6973 "Create Expense Categories" XUSAOTHERTxt: Label 'USA-OTHER', Locked = true; XEMPLEXPTxt: Label 'EMPLEXP', MaxLength = 20; - internal procedure InsertExpenseCategory(Code: Code[20]; Description: Text[250]; PostingDescription: Text[100]; ExpenseGroupCode: Code[20]; PostingGroupCode: Code[20]; PaymentMethod: Code[20]; IsRefundable: Boolean; IsPrepayment: Boolean; AttachmentEnforcement: Enum "Expense Attachment Enforcement"; DetailRequired: Enum "Expense Detail Needed") + internal procedure InsertExpenseCategory(Code: Code[20]; Description: Text[250]; PostingDescription: Text[100]; ExpenseGroupCode: Code[20]; PostingGroupCode: Code[20]; PaymentMethod: Code[10]; IsRefundable: Boolean; IsPrepayment: Boolean; AttachmentEnforcement: Enum "Expense Attachment Enforcement"; DetailRequired: Enum "Expense Detail Needed") begin if ExpenseCategory.Get(Code) then exit; @@ -1310,14 +1290,14 @@ codeunit 6973 "Create Expense Categories" EmployeePostingGroup.Modify(true); end; - local procedure InsertExpenseGroup(Code: Code[20]; Description: Text[100]) + local procedure InsertExpenseGroup(Code: Code[20]; Description: Text) begin if ExpenseGroup.Get(Code) then exit; ExpenseGroup.Init(); ExpenseGroup.Validate(Code, Code); - ExpenseGroup.Validate("Description", Description); + ExpenseGroup.Validate("Description", CopyStr(Description, 1, MaxStrLen(ExpenseGroup.Description))); ExpenseGroup.Insert(true); end; diff --git a/src/Apps/W1/ExpenseAgent/demo data/Demo Data/2.Master Data/CreateExpenseLocation.Codeunit.al b/src/Apps/W1/ExpenseAgent/app/src/Setup/Codeunits/CreateExpenseLocation.Codeunit.al similarity index 70% rename from src/Apps/W1/ExpenseAgent/demo data/Demo Data/2.Master Data/CreateExpenseLocation.Codeunit.al rename to src/Apps/W1/ExpenseAgent/app/src/Setup/Codeunits/CreateExpenseLocation.Codeunit.al index 7eb05bf2c93..a58a31a1bb5 100644 --- a/src/Apps/W1/ExpenseAgent/demo data/Demo Data/2.Master Data/CreateExpenseLocation.Codeunit.al +++ b/src/Apps/W1/ExpenseAgent/app/src/Setup/Codeunits/CreateExpenseLocation.Codeunit.al @@ -4,275 +4,276 @@ // ------------------------------------------------------------------------------------------------ namespace Microsoft.ExpenseAgent; -using Microsoft.DemoData.Foundation; - -codeunit 8208 "Create Expense Location" +codeunit 7104 "Create Expense Location" { InherentEntitlements = X; InherentPermissions = X; + TableNo = "Expense Location"; trigger OnRun() - var - CreateCountryRegion: Codeunit "Create Country/Region"; - ContosoExpenseAgent: Codeunit "Contoso Expense Agent"; - begin - ContosoExpenseAgent.InsertExpenseLocation(CanadaAll(), CanadaAllLocationLbl, CreateCountryRegion.CA(), '', ''); - ContosoExpenseAgent.InsertExpenseLocation(DenmarkAll(), DenmarkLbl, CreateCountryRegion.DK(), '', ''); - ContosoExpenseAgent.InsertExpenseLocation(DenmarkCph(), DKCopenhagenLbl, CreateCountryRegion.DK(), CopenhagenLbl, ''); - ContosoExpenseAgent.InsertExpenseLocation(Domestic(), DomesticLbl, '', '', ''); - ContosoExpenseAgent.InsertExpenseLocation(FranceAll(), FranceLbl, CreateCountryRegion.FR(), '', ''); - ContosoExpenseAgent.InsertExpenseLocation(FranceParis(), FranceParisLbl, CreateCountryRegion.FR(), ParisLbl, ''); - ContosoExpenseAgent.InsertExpenseLocation(GermanyAll(), GermanyLbl, CreateCountryRegion.DE(), '', ''); - ContosoExpenseAgent.InsertExpenseLocation(UKLondon(), UKLondonAreaLbl, CreateCountryRegion.GB(), LondonLbl, ''); - ContosoExpenseAgent.InsertExpenseLocation(UKOther(), UKOtherLbl, CreateCountryRegion.GB(), '', ''); - ContosoExpenseAgent.InsertExpenseLocation(USAFlorida(), USAFloridaLbl, CreateCountryRegion.US(), '', FLLbl); - ContosoExpenseAgent.InsertExpenseLocation(USANY(), USANYLbl, CreateCountryRegion.US(), NewYorkLbl, ''); - ContosoExpenseAgent.InsertExpenseLocation(USAOther(), USAOtherLbl, CreateCountryRegion.US(), '', ''); - ContosoExpenseAgent.InsertExpenseLocation(UnitedArabEmiratesAll(), UnitedArabEmiratesAllLocationLbl, 'AE', '', ''); - ContosoExpenseAgent.InsertExpenseLocation(AustriaAll(), AustriaAllLocationLbl, 'AT', '', ''); - ContosoExpenseAgent.InsertExpenseLocation(AustraliaAll(), AustraliaAllLocationLbl, 'AU', '', ''); - ContosoExpenseAgent.InsertExpenseLocation(BelgiumAll(), BelgiumAllLocationLbl, 'BE', '', ''); - ContosoExpenseAgent.InsertExpenseLocation(BulgariaAll(), BulgariaAllLocationLbl, 'BG', '', ''); - ContosoExpenseAgent.InsertExpenseLocation(BruneiDarussalamAll(), BruneiDarussalamAllLocationLbl, 'BN', '', ''); - ContosoExpenseAgent.InsertExpenseLocation(BrazilAll(), BrazilAllLocationLbl, 'BR', '', ''); - ContosoExpenseAgent.InsertExpenseLocation(SwitzerlandAll(), SwitzerlandAllLocationLbl, 'CH', '', ''); - ContosoExpenseAgent.InsertExpenseLocation(SwitzerlandGeneva(), SwitzerlandGenevaLbl, 'CH', GenevaLbl, ''); - ContosoExpenseAgent.InsertExpenseLocation(SwitzerlandZurich(), SwitzerlandZurichLbl, 'CH', ZurichLbl, ''); - ContosoExpenseAgent.InsertExpenseLocation(ChinaAll(), ChinaAllLocationLbl, 'CN', '', ''); - ContosoExpenseAgent.InsertExpenseLocation(CostaRicaAll(), CostaRicaAllLocationLbl, 'CR', '', ''); - ContosoExpenseAgent.InsertExpenseLocation(CyprusAll(), CyprusAllLocationLbl, 'CY', '', ''); - ContosoExpenseAgent.InsertExpenseLocation(CzechiaAll(), CzechiaAllLocationLbl, 'CZ', '', ''); - ContosoExpenseAgent.InsertExpenseLocation(AlgeriaAll(), AlgeriaAllLocationLbl, 'DZ', '', ''); - ContosoExpenseAgent.InsertExpenseLocation(EstoniaAll(), EstoniaAllLocationLbl, 'EE', '', ''); - ContosoExpenseAgent.InsertExpenseLocation(GreeceAll(), GreeceAllLocationLbl, 'EL', '', ''); - ContosoExpenseAgent.InsertExpenseLocation(SpainAll(), SpainAllLocationLbl, 'ES', '', ''); - ContosoExpenseAgent.InsertExpenseLocation(FinlandAll(), FinlandAllLocationLbl, 'FI', '', ''); - ContosoExpenseAgent.InsertExpenseLocation(FijiIslandsAll(), FijiIslandsAllLocationLbl, 'FJ', '', ''); - ContosoExpenseAgent.InsertExpenseLocation(GreatBritainAll(), GreatBritainAllLocationLbl, 'GB', '', ''); - ContosoExpenseAgent.InsertExpenseLocation(CroatiaAll(), CroatiaAllLocationLbl, 'HR', '', ''); - ContosoExpenseAgent.InsertExpenseLocation(HungaryAll(), HungaryAllLocationLbl, 'HU', '', ''); - ContosoExpenseAgent.InsertExpenseLocation(IndonesiaAll(), IndonesiaAllLocationLbl, 'ID', '', ''); - ContosoExpenseAgent.InsertExpenseLocation(IrelandAll(), IrelandAllLocationLbl, 'IE', '', ''); - ContosoExpenseAgent.InsertExpenseLocation(IndiaAll(), IndiaAllLocationLbl, 'IN', '', ''); - ContosoExpenseAgent.InsertExpenseLocation(IcelandAll(), IcelandAllLocationLbl, 'IS', '', ''); - ContosoExpenseAgent.InsertExpenseLocation(ItalyAll(), ItalyAllLocationLbl, 'IT', '', ''); - ContosoExpenseAgent.InsertExpenseLocation(JapanAll(), JapanAllLocationLbl, 'JP', '', ''); - ContosoExpenseAgent.InsertExpenseLocation(JapanTokyo(), JapanTokyoLbl, 'JP', TokyoLbl, ''); - ContosoExpenseAgent.InsertExpenseLocation(KenyaAll(), KenyaAllLocationLbl, 'KE', '', ''); - ContosoExpenseAgent.InsertExpenseLocation(LithuaniaAll(), LithuaniaAllLocationLbl, 'LT', '', ''); - ContosoExpenseAgent.InsertExpenseLocation(LuxembourgAll(), LuxembourgAllLocationLbl, 'LU', '', ''); - ContosoExpenseAgent.InsertExpenseLocation(LatviaAll(), LatviaAllLocationLbl, 'LV', '', ''); - ContosoExpenseAgent.InsertExpenseLocation(MoroccoAll(), MoroccoAllLocationLbl, 'MA', '', ''); - ContosoExpenseAgent.InsertExpenseLocation(MontenegroAll(), MontenegroAllLocationLbl, 'ME', '', ''); - ContosoExpenseAgent.InsertExpenseLocation(MaltaAll(), MaltaAllLocationLbl, 'MT', '', ''); - ContosoExpenseAgent.InsertExpenseLocation(MexicoAll(), MexicoAllLocationLbl, 'MX', '', ''); - ContosoExpenseAgent.InsertExpenseLocation(MalaysiaAll(), MalaysiaAllLocationLbl, 'MY', '', ''); - ContosoExpenseAgent.InsertExpenseLocation(MozambiqueAll(), MozambiqueAllLocationLbl, 'MZ', '', ''); - ContosoExpenseAgent.InsertExpenseLocation(NigeriaAll(), NigeriaAllLocationLbl, 'NG', '', ''); - ContosoExpenseAgent.InsertExpenseLocation(NorthernIrelandAll(), NorthernIrelandAllLocationLbl, 'NI', '', ''); - ContosoExpenseAgent.InsertExpenseLocation(NetherlandsAll(), NetherlandsAllLocationLbl, 'NL', '', ''); - ContosoExpenseAgent.InsertExpenseLocation(NorwayAll(), NorwayAllLocationLbl, 'NO', '', ''); - ContosoExpenseAgent.InsertExpenseLocation(NorwayOslo(), NorwayOsloLbl, 'NO', OsloLbl, ''); - ContosoExpenseAgent.InsertExpenseLocation(NewZealandAll(), NewZealandAllLocationLbl, 'NZ', '', ''); - ContosoExpenseAgent.InsertExpenseLocation(PhilippinesAll(), PhilippinesAllLocationLbl, 'PH', '', ''); - ContosoExpenseAgent.InsertExpenseLocation(PolandAll(), PolandAllLocationLbl, 'PL', '', ''); - ContosoExpenseAgent.InsertExpenseLocation(PortugalAll(), PortugalAllLocationLbl, 'PT', '', ''); - ContosoExpenseAgent.InsertExpenseLocation(RomaniaAll(), RomaniaAllLocationLbl, 'RO', '', ''); - ContosoExpenseAgent.InsertExpenseLocation(SerbiaAll(), SerbiaAllLocationLbl, 'RS', '', ''); - ContosoExpenseAgent.InsertExpenseLocation(RussiaAll(), RussiaAllLocationLbl, 'RU', '', ''); - ContosoExpenseAgent.InsertExpenseLocation(SaudiArabiaAll(), SaudiArabiaAllLocationLbl, 'SA', '', ''); - ContosoExpenseAgent.InsertExpenseLocation(SolomonIslandsAll(), SolomonIslandsAllLocationLbl, 'SB', '', ''); - ContosoExpenseAgent.InsertExpenseLocation(SwedenAll(), SwedenAllLocationLbl, 'SE', '', ''); - ContosoExpenseAgent.InsertExpenseLocation(SingaporeAll(), SingaporeAllLocationLbl, 'SG', '', ''); - ContosoExpenseAgent.InsertExpenseLocation(SloveniaAll(), SloveniaAllLocationLbl, 'SI', '', ''); - ContosoExpenseAgent.InsertExpenseLocation(SlovakiaAll(), SlovakiaAllLocationLbl, 'SK', '', ''); - ContosoExpenseAgent.InsertExpenseLocation(SwazilandAll(), SwazilandAllLocationLbl, 'SZ', '', ''); - ContosoExpenseAgent.InsertExpenseLocation(ThailandAll(), ThailandAllLocationLbl, 'TH', '', ''); - ContosoExpenseAgent.InsertExpenseLocation(TunisiaAll(), TunisiaAllLocationLbl, 'TN', '', ''); - ContosoExpenseAgent.InsertExpenseLocation(TurkiyeAll(), TurkiyeAllLocationLbl, 'TR', '', ''); - ContosoExpenseAgent.InsertExpenseLocation(TanzaniaAll(), TanzaniaAllLocationLbl, 'TZ', '', ''); - ContosoExpenseAgent.InsertExpenseLocation(UgandaAll(), UgandaAllLocationLbl, 'UG', '', ''); - ContosoExpenseAgent.InsertExpenseLocation(VanuatuAll(), VanuatuAllLocationLbl, 'VU', '', ''); - ContosoExpenseAgent.InsertExpenseLocation(SamoaAll(), SamoaAllLocationLbl, 'WS', '', ''); - ContosoExpenseAgent.InsertExpenseLocation(SouthAfricaAll(), SouthAfricaAllLocationLbl, 'ZA', '', ''); - ContosoExpenseAgent.InsertExpenseLocation(AfghanistanAll(), AfghanistanAllLocationLbl, 'AF', '', ''); - ContosoExpenseAgent.InsertExpenseLocation(AlbaniaAll(), AlbaniaAllLocationLbl, 'AL', '', ''); - ContosoExpenseAgent.InsertExpenseLocation(AndorraAll(), AndorraAllLocationLbl, 'AD', '', ''); - ContosoExpenseAgent.InsertExpenseLocation(AngolaAll(), AngolaAllLocationLbl, 'AO', '', ''); - ContosoExpenseAgent.InsertExpenseLocation(AnguillaAll(), AnguillaAllLocationLbl, 'AI', '', ''); - ContosoExpenseAgent.InsertExpenseLocation(AntarcticaAll(), AntarcticaAllLocationLbl, 'AQ', '', ''); - ContosoExpenseAgent.InsertExpenseLocation(AntiguaBarbudaAll(), AntiguaBarbudaAllLocationLbl, 'AG', '', ''); - ContosoExpenseAgent.InsertExpenseLocation(ArgentinaAll(), ArgentinaAllLocationLbl, 'AR', '', ''); - ContosoExpenseAgent.InsertExpenseLocation(ArmeniaAll(), ArmeniaAllLocationLbl, 'AM', '', ''); - ContosoExpenseAgent.InsertExpenseLocation(ArubaAll(), ArubaAllLocationLbl, 'AW', '', ''); - ContosoExpenseAgent.InsertExpenseLocation(AzerbaijanAll(), AzerbaijanAllLocationLbl, 'AZ', '', ''); - ContosoExpenseAgent.InsertExpenseLocation(BahamasAll(), BahamasAllLocationLbl, 'BS', '', ''); - ContosoExpenseAgent.InsertExpenseLocation(BahrainAll(), BahrainAllLocationLbl, 'BH', '', ''); - ContosoExpenseAgent.InsertExpenseLocation(BangladeshAll(), BangladeshAllLocationLbl, 'BD', '', ''); - ContosoExpenseAgent.InsertExpenseLocation(BarbadosAll(), BarbadosAllLocationLbl, 'BB', '', ''); - ContosoExpenseAgent.InsertExpenseLocation(BelarusAll(), BelarusAllLocationLbl, 'BY', '', ''); - ContosoExpenseAgent.InsertExpenseLocation(BelizeAll(), BelizeAllLocationLbl, 'BZ', '', ''); - ContosoExpenseAgent.InsertExpenseLocation(BeninAll(), BeninAllLocationLbl, 'BJ', '', ''); - ContosoExpenseAgent.InsertExpenseLocation(BermudaAll(), BermudaAllLocationLbl, 'BM', '', ''); - ContosoExpenseAgent.InsertExpenseLocation(BhutanAll(), BhutanAllLocationLbl, 'BT', '', ''); - ContosoExpenseAgent.InsertExpenseLocation(BoliviaAll(), BoliviaAllLocationLbl, 'BO', '', ''); - ContosoExpenseAgent.InsertExpenseLocation(BonaireAll(), BonaireAllLocationLbl, 'BQ', '', ''); - ContosoExpenseAgent.InsertExpenseLocation(BosniaHerzegovinaAll(), BosniaHerzegovinaAllLocationLbl, 'BA', '', ''); - ContosoExpenseAgent.InsertExpenseLocation(BotswanaAll(), BotswanaAllLocationLbl, 'BW', '', ''); - ContosoExpenseAgent.InsertExpenseLocation(BouvetIslandAll(), BouvetIslandAllLocationLbl, 'BV', '', ''); - ContosoExpenseAgent.InsertExpenseLocation(BritishIndianOceanAll(), BritishIndianOceanAllLocationLbl, 'IO', '', ''); - ContosoExpenseAgent.InsertExpenseLocation(BurkinaFasoAll(), BurkinaFasoAllLocationLbl, 'BF', '', ''); - ContosoExpenseAgent.InsertExpenseLocation(BurundiAll(), BurundiAllLocationLbl, 'BI', '', ''); - ContosoExpenseAgent.InsertExpenseLocation(CaboVerdeAll(), CaboVerdeAllLocationLbl, 'CV', '', ''); - ContosoExpenseAgent.InsertExpenseLocation(CambodiaAll(), CambodiaAllLocationLbl, 'KH', '', ''); - ContosoExpenseAgent.InsertExpenseLocation(CameroonAll(), CameroonAllLocationLbl, 'CM', '', ''); - ContosoExpenseAgent.InsertExpenseLocation(CaymanIslandsAll(), CaymanIslandsAllLocationLbl, 'KY', '', ''); - ContosoExpenseAgent.InsertExpenseLocation(CentralAfricanAll(), CentralAfricanAllLocationLbl, 'CF', '', ''); - ContosoExpenseAgent.InsertExpenseLocation(ChadAll(), ChadAllLocationLbl, 'TD', '', ''); - ContosoExpenseAgent.InsertExpenseLocation(ChileAll(), ChileAllLocationLbl, 'CL', '', ''); - ContosoExpenseAgent.InsertExpenseLocation(ChristmasIslandAll(), ChristmasIslandAllLocationLbl, 'CX', '', ''); - ContosoExpenseAgent.InsertExpenseLocation(CocosIslandsAll(), CocosIslandsAllLocationLbl, 'CC', '', ''); - ContosoExpenseAgent.InsertExpenseLocation(ColombiaAll(), ColombiaAllLocationLbl, 'CO', '', ''); - ContosoExpenseAgent.InsertExpenseLocation(ComorosAll(), ComorosAllLocationLbl, 'KM', '', ''); - ContosoExpenseAgent.InsertExpenseLocation(CongoDRAll(), CongoDRAllLocationLbl, 'CD', '', ''); - ContosoExpenseAgent.InsertExpenseLocation(CongoAll(), CongoAllLocationLbl, 'CG', '', ''); - ContosoExpenseAgent.InsertExpenseLocation(CookIslandsAll(), CookIslandsAllLocationLbl, 'CK', '', ''); - ContosoExpenseAgent.InsertExpenseLocation(CubaAll(), CubaAllLocationLbl, 'CU', '', ''); - ContosoExpenseAgent.InsertExpenseLocation(CuracaoAll(), CuracaoAllLocationLbl, 'CW', '', ''); - ContosoExpenseAgent.InsertExpenseLocation(CotedIvoireAll(), CotedIvoireAllLocationLbl, 'CI', '', ''); - ContosoExpenseAgent.InsertExpenseLocation(DjiboutiAll(), DjiboutiAllLocationLbl, 'DJ', '', ''); - ContosoExpenseAgent.InsertExpenseLocation(DominicaAll(), DominicaAllLocationLbl, 'DM', '', ''); - ContosoExpenseAgent.InsertExpenseLocation(DominicanAll(), DominicanAllLocationLbl, 'DO', '', ''); - ContosoExpenseAgent.InsertExpenseLocation(EcuadorAll(), EcuadorAllLocationLbl, 'EC', '', ''); - ContosoExpenseAgent.InsertExpenseLocation(EgyptAll(), EgyptAllLocationLbl, 'EG', '', ''); - ContosoExpenseAgent.InsertExpenseLocation(ElSalvadorAll(), ElSalvadorAllLocationLbl, 'SV', '', ''); - ContosoExpenseAgent.InsertExpenseLocation(EquatorialGuineaAll(), EquatorialGuineaAllLocationLbl, 'GQ', '', ''); - ContosoExpenseAgent.InsertExpenseLocation(EritreaAll(), EritreaAllLocationLbl, 'ER', '', ''); - ContosoExpenseAgent.InsertExpenseLocation(EthiopiaAll(), EthiopiaAllLocationLbl, 'ET', '', ''); - ContosoExpenseAgent.InsertExpenseLocation(FalklandIslandsAll(), FalklandIslandsAllLocationLbl, 'FK', '', ''); - ContosoExpenseAgent.InsertExpenseLocation(FaroeIslandsAll(), FaroeIslandsAllLocationLbl, 'FO', '', ''); - ContosoExpenseAgent.InsertExpenseLocation(FrenchGuianaAll(), FrenchGuianaAllLocationLbl, 'GF', '', ''); - ContosoExpenseAgent.InsertExpenseLocation(FrenchPolynesiaAll(), FrenchPolynesiaAllLocationLbl, 'PF', '', ''); - ContosoExpenseAgent.InsertExpenseLocation(FrenchSouthernAll(), FrenchSouthernAllLocationLbl, 'TF', '', ''); - ContosoExpenseAgent.InsertExpenseLocation(GabonAll(), GabonAllLocationLbl, 'GA', '', ''); - ContosoExpenseAgent.InsertExpenseLocation(GambiaAll(), GambiaAllLocationLbl, 'GM', '', ''); - ContosoExpenseAgent.InsertExpenseLocation(GeorgiaAll(), GeorgiaAllLocationLbl, 'GE', '', ''); - ContosoExpenseAgent.InsertExpenseLocation(GhanaAll(), GhanaAllLocationLbl, 'GH', '', ''); - ContosoExpenseAgent.InsertExpenseLocation(GibraltarAll(), GibraltarAllLocationLbl, 'GI', '', ''); - ContosoExpenseAgent.InsertExpenseLocation(GreenlandAll(), GreenlandAllLocationLbl, 'GL', '', ''); - ContosoExpenseAgent.InsertExpenseLocation(GrenadaAll(), GrenadaAllLocationLbl, 'GD', '', ''); - ContosoExpenseAgent.InsertExpenseLocation(GuadeloupeAll(), GuadeloupeAllLocationLbl, 'GP', '', ''); - ContosoExpenseAgent.InsertExpenseLocation(GuamAll(), GuamAllLocationLbl, 'GU', '', ''); - ContosoExpenseAgent.InsertExpenseLocation(GuatemalaAll(), GuatemalaAllLocationLbl, 'GT', '', ''); - ContosoExpenseAgent.InsertExpenseLocation(GuernseyAll(), GuernseyAllLocationLbl, 'GG', '', ''); - ContosoExpenseAgent.InsertExpenseLocation(GuineaAll(), GuineaAllLocationLbl, 'GN', '', ''); - ContosoExpenseAgent.InsertExpenseLocation(GuineaBissauAll(), GuineaBissauAllLocationLbl, 'GW', '', ''); - ContosoExpenseAgent.InsertExpenseLocation(GuyanaAll(), GuyanaAllLocationLbl, 'GY', '', ''); - ContosoExpenseAgent.InsertExpenseLocation(HaitiAll(), HaitiAllLocationLbl, 'HT', '', ''); - ContosoExpenseAgent.InsertExpenseLocation(HeardIslandAll(), HeardIslandAllLocationLbl, 'HM', '', ''); - ContosoExpenseAgent.InsertExpenseLocation(HolySeeAll(), HolySeeAllLocationLbl, 'VA', '', ''); - ContosoExpenseAgent.InsertExpenseLocation(HondurasAll(), HondurasAllLocationLbl, 'HN', '', ''); - ContosoExpenseAgent.InsertExpenseLocation(HongKongAll(), HongKongAllLocationLbl, 'HK', '', ''); - ContosoExpenseAgent.InsertExpenseLocation(IsleManAll(), IsleManAllLocationLbl, 'IM', '', ''); - ContosoExpenseAgent.InsertExpenseLocation(IsraelAll(), IsraelAllLocationLbl, 'IL', '', ''); - ContosoExpenseAgent.InsertExpenseLocation(JamaicaAll(), JamaicaAllLocationLbl, 'JM', '', ''); - ContosoExpenseAgent.InsertExpenseLocation(JerseyAll(), JerseyAllLocationLbl, 'JE', '', ''); - ContosoExpenseAgent.InsertExpenseLocation(JordanAll(), JordanAllLocationLbl, 'JO', '', ''); - ContosoExpenseAgent.InsertExpenseLocation(KazakhstanAll(), KazakhstanAllLocationLbl, 'KZ', '', ''); - ContosoExpenseAgent.InsertExpenseLocation(KiribatiAll(), KiribatiAllLocationLbl, 'KI', '', ''); - ContosoExpenseAgent.InsertExpenseLocation(NorthKoreaAll(), NorthKoreaAllLocationLbl, 'KP', '', ''); - ContosoExpenseAgent.InsertExpenseLocation(SouthKoreaAll(), SouthKoreaAllLocationLbl, 'KR', '', ''); - ContosoExpenseAgent.InsertExpenseLocation(KuwaitAll(), KuwaitAllLocationLbl, 'KW', '', ''); - ContosoExpenseAgent.InsertExpenseLocation(KyrgyzstanAll(), KyrgyzstanAllLocationLbl, 'KG', '', ''); - ContosoExpenseAgent.InsertExpenseLocation(LaosAll(), LaosAllLocationLbl, 'LA', '', ''); - ContosoExpenseAgent.InsertExpenseLocation(LebanonAll(), LebanonAllLocationLbl, 'LB', '', ''); - ContosoExpenseAgent.InsertExpenseLocation(LesothoAll(), LesothoAllLocationLbl, 'LS', '', ''); - ContosoExpenseAgent.InsertExpenseLocation(LiberiaAll(), LiberiaAllLocationLbl, 'LR', '', ''); - ContosoExpenseAgent.InsertExpenseLocation(LibyaAll(), LibyaAllLocationLbl, 'LY', '', ''); - ContosoExpenseAgent.InsertExpenseLocation(LiechtensteinAll(), LiechtensteinAllLocationLbl, 'LI', '', ''); - ContosoExpenseAgent.InsertExpenseLocation(MacaoAll(), MacaoAllLocationLbl, 'MO', '', ''); - ContosoExpenseAgent.InsertExpenseLocation(MadagascarAll(), MadagascarAllLocationLbl, 'MG', '', ''); - ContosoExpenseAgent.InsertExpenseLocation(MalawiAll(), MalawiAllLocationLbl, 'MW', '', ''); - ContosoExpenseAgent.InsertExpenseLocation(MaldivesAll(), MaldivesAllLocationLbl, 'MV', '', ''); - ContosoExpenseAgent.InsertExpenseLocation(MaliAll(), MaliAllLocationLbl, 'ML', '', ''); - ContosoExpenseAgent.InsertExpenseLocation(MarshallIslandsAll(), MarshallIslandsAllLocationLbl, 'MH', '', ''); - ContosoExpenseAgent.InsertExpenseLocation(MartiniqueAll(), MartiniqueAllLocationLbl, 'MQ', '', ''); - ContosoExpenseAgent.InsertExpenseLocation(MauritaniaAll(), MauritaniaAllLocationLbl, 'MR', '', ''); - ContosoExpenseAgent.InsertExpenseLocation(MauritiusAll(), MauritiusAllLocationLbl, 'MU', '', ''); - ContosoExpenseAgent.InsertExpenseLocation(MayotteAll(), MayotteAllLocationLbl, 'YT', '', ''); - ContosoExpenseAgent.InsertExpenseLocation(MicronesiaAll(), MicronesiaAllLocationLbl, 'FM', '', ''); - ContosoExpenseAgent.InsertExpenseLocation(MoldovaAll(), MoldovaAllLocationLbl, 'MD', '', ''); - ContosoExpenseAgent.InsertExpenseLocation(MonacoAll(), MonacoAllLocationLbl, 'MC', '', ''); - ContosoExpenseAgent.InsertExpenseLocation(MongoliaAll(), MongoliaAllLocationLbl, 'MN', '', ''); - ContosoExpenseAgent.InsertExpenseLocation(MontserratAll(), MontserratAllLocationLbl, 'MS', '', ''); - ContosoExpenseAgent.InsertExpenseLocation(MyanmarAll(), MyanmarAllLocationLbl, 'MM', '', ''); - ContosoExpenseAgent.InsertExpenseLocation(NamibiaAll(), NamibiaAllLocationLbl, 'NA', '', ''); - ContosoExpenseAgent.InsertExpenseLocation(NauruAll(), NauruAllLocationLbl, 'NR', '', ''); - ContosoExpenseAgent.InsertExpenseLocation(NepalAll(), NepalAllLocationLbl, 'NP', '', ''); - ContosoExpenseAgent.InsertExpenseLocation(NewCaledoniaAll(), NewCaledoniaAllLocationLbl, 'NC', '', ''); - ContosoExpenseAgent.InsertExpenseLocation(NigerAll(), NigerAllLocationLbl, 'NE', '', ''); - ContosoExpenseAgent.InsertExpenseLocation(NiueAll(), NiueAllLocationLbl, 'NU', '', ''); - ContosoExpenseAgent.InsertExpenseLocation(NorfolkIslandAll(), NorfolkIslandAllLocationLbl, 'NF', '', ''); - ContosoExpenseAgent.InsertExpenseLocation(NorthMacedoniaAll(), NorthMacedoniaAllLocationLbl, 'MK', '', ''); - ContosoExpenseAgent.InsertExpenseLocation(NorthernMarianaAll(), NorthernMarianaAllLocationLbl, 'MP', '', ''); - ContosoExpenseAgent.InsertExpenseLocation(OmanAll(), OmanAllLocationLbl, 'OM', '', ''); - ContosoExpenseAgent.InsertExpenseLocation(PakistanAll(), PakistanAllLocationLbl, 'PK', '', ''); - ContosoExpenseAgent.InsertExpenseLocation(PalauAll(), PalauAllLocationLbl, 'PW', '', ''); - ContosoExpenseAgent.InsertExpenseLocation(PalestineAll(), PalestineAllLocationLbl, 'PS', '', ''); - ContosoExpenseAgent.InsertExpenseLocation(PanamaAll(), PanamaAllLocationLbl, 'PA', '', ''); - ContosoExpenseAgent.InsertExpenseLocation(PapuaNewGuineaAll(), PapuaNewGuineaAllLocationLbl, 'PG', '', ''); - ContosoExpenseAgent.InsertExpenseLocation(ParaguayAll(), ParaguayAllLocationLbl, 'PY', '', ''); - ContosoExpenseAgent.InsertExpenseLocation(PeruAll(), PeruAllLocationLbl, 'PE', '', ''); - ContosoExpenseAgent.InsertExpenseLocation(PitcairnAll(), PitcairnAllLocationLbl, 'PN', '', ''); - ContosoExpenseAgent.InsertExpenseLocation(PuertoRicoAll(), PuertoRicoAllLocationLbl, 'PR', '', ''); - ContosoExpenseAgent.InsertExpenseLocation(QatarAll(), QatarAllLocationLbl, 'QA', '', ''); - ContosoExpenseAgent.InsertExpenseLocation(RwandaAll(), RwandaAllLocationLbl, 'RW', '', ''); - ContosoExpenseAgent.InsertExpenseLocation(ReunionAll(), ReunionAllLocationLbl, 'RE', '', ''); - ContosoExpenseAgent.InsertExpenseLocation(SaintBarthelemyAll(), SaintBarthelemyAllLocationLbl, 'BL', '', ''); - ContosoExpenseAgent.InsertExpenseLocation(SaintHelenaAll(), SaintHelenaAllLocationLbl, 'SH', '', ''); - ContosoExpenseAgent.InsertExpenseLocation(SaintKittsNevisAll(), SaintKittsNevisAllLocationLbl, 'KN', '', ''); - ContosoExpenseAgent.InsertExpenseLocation(SaintLuciaAll(), SaintLuciaAllLocationLbl, 'LC', '', ''); - ContosoExpenseAgent.InsertExpenseLocation(SaintMartinAll(), SaintMartinAllLocationLbl, 'MF', '', ''); - ContosoExpenseAgent.InsertExpenseLocation(SaintPierreQuelonAll(), SaintPierreQuelonAllLocationLbl, 'PM', '', ''); - ContosoExpenseAgent.InsertExpenseLocation(SaintVincentAll(), SaintVincentAllLocationLbl, 'VC', '', ''); - ContosoExpenseAgent.InsertExpenseLocation(SanMarinoAll(), SanMarinoAllLocationLbl, 'SM', '', ''); - ContosoExpenseAgent.InsertExpenseLocation(SaoTomeAll(), SaoTomeAllLocationLbl, 'ST', '', ''); - ContosoExpenseAgent.InsertExpenseLocation(SenegalAll(), SenegalAllLocationLbl, 'SN', '', ''); - ContosoExpenseAgent.InsertExpenseLocation(SeychellesAll(), SeychellesAllLocationLbl, 'SC', '', ''); - ContosoExpenseAgent.InsertExpenseLocation(SierraLeoneAll(), SierraLeoneAllLocationLbl, 'SL', '', ''); - ContosoExpenseAgent.InsertExpenseLocation(SintMaartenAll(), SintMaartenAllLocationLbl, 'SX', '', ''); - ContosoExpenseAgent.InsertExpenseLocation(SomaliaAll(), SomaliaAllLocationLbl, 'SO', '', ''); - ContosoExpenseAgent.InsertExpenseLocation(SouthGeorgiaAll(), SouthGeorgiaAllLocationLbl, 'GS', '', ''); - ContosoExpenseAgent.InsertExpenseLocation(SouthSudanAll(), SouthSudanAllLocationLbl, 'SS', '', ''); - ContosoExpenseAgent.InsertExpenseLocation(SriLankaAll(), SriLankaAllLocationLbl, 'LK', '', ''); - ContosoExpenseAgent.InsertExpenseLocation(SudanAll(), SudanAllLocationLbl, 'SD', '', ''); - ContosoExpenseAgent.InsertExpenseLocation(SurinameAll(), SurinameAllLocationLbl, 'SR', '', ''); - ContosoExpenseAgent.InsertExpenseLocation(SvalbardJanMayenAll(), SvalbardJanMayenAllLocationLbl, 'SJ', '', ''); - ContosoExpenseAgent.InsertExpenseLocation(SyriaAll(), SyriaAllLocationLbl, 'SY', '', ''); - ContosoExpenseAgent.InsertExpenseLocation(TaiwanAll(), TaiwanAllLocationLbl, 'TW', '', ''); - ContosoExpenseAgent.InsertExpenseLocation(TajikistanAll(), TajikistanAllLocationLbl, 'TJ', '', ''); - ContosoExpenseAgent.InsertExpenseLocation(TimorLesteAll(), TimorLesteAllLocationLbl, 'TL', '', ''); - ContosoExpenseAgent.InsertExpenseLocation(TogoAll(), TogoAllLocationLbl, 'TG', '', ''); - ContosoExpenseAgent.InsertExpenseLocation(TokelauAll(), TokelauAllLocationLbl, 'TK', '', ''); - ContosoExpenseAgent.InsertExpenseLocation(TongaAll(), TongaAllLocationLbl, 'TO', '', ''); - ContosoExpenseAgent.InsertExpenseLocation(TrinidadTobagoAll(), TrinidadTobagoAllLocationLbl, 'TT', '', ''); - ContosoExpenseAgent.InsertExpenseLocation(TurkmenistanAll(), TurkmenistanAllLocationLbl, 'TM', '', ''); - ContosoExpenseAgent.InsertExpenseLocation(TurksCalcosAll(), TurksCalcosAllLocationLbl, 'TC', '', ''); - ContosoExpenseAgent.InsertExpenseLocation(TuvaluAll(), TuvaluAllLocationLbl, 'TV', '', ''); - ContosoExpenseAgent.InsertExpenseLocation(UkraineAll(), UkraineAllLocationLbl, 'UA', '', ''); - ContosoExpenseAgent.InsertExpenseLocation(USMinorOutlyingAll(), USMinorOutlyingAllLocationLbl, 'UM', '', ''); - ContosoExpenseAgent.InsertExpenseLocation(UruguayAll(), UruguayAllLocationLbl, 'UY', '', ''); - ContosoExpenseAgent.InsertExpenseLocation(UzbekistanAll(), UzbekistanAllLocationLbl, 'UZ', '', ''); - ContosoExpenseAgent.InsertExpenseLocation(VenezuelAll(), VenezuelAllLocationLbl, 'VE', '', ''); - ContosoExpenseAgent.InsertExpenseLocation(VietnamAll(), VietnamAllLocationLbl, 'VN', '', ''); - ContosoExpenseAgent.InsertExpenseLocation(VirginIslandsBrAll(), VirginIslandsBrAllLocationLbl, 'VG', '', ''); - ContosoExpenseAgent.InsertExpenseLocation(VirginIslandsUSAll(), VirginIslandsUSAllLocationLbl, 'VI', '', ''); - ContosoExpenseAgent.InsertExpenseLocation(WallisatunaAll(), WallisatunaAllLocationLbl, 'WF', '', ''); - ContosoExpenseAgent.InsertExpenseLocation(WesternSaharaAll(), WesternSaharaAllLocationLbl, 'EH', '', ''); - ContosoExpenseAgent.InsertExpenseLocation(YemenAll(), YemenAllLocationLbl, 'YE', '', ''); - ContosoExpenseAgent.InsertExpenseLocation(ZambiaAll(), ZambiaAllLocationLbl, 'ZM', '', ''); - ContosoExpenseAgent.InsertExpenseLocation(ZimbabweAll(), ZimbabweAllLocationLbl, 'ZW', '', ''); - ContosoExpenseAgent.InsertExpenseLocation(AlandIslandsAll(), AlandIslandsAllLocationLbl, 'AX', '', ''); + begin + InsertExpenseLocations(Rec); + end; + + internal procedure InsertExpenseLocations(var ExpenseLocation: Record "Expense Location") + begin + InsertExpenseLocation(ExpenseLocation, CanadaAll(), CanadaAllLocationLbl, 'CA', '', ''); + InsertExpenseLocation(ExpenseLocation, DenmarkAll(), DenmarkLbl, 'DK', '', ''); + InsertExpenseLocation(ExpenseLocation, DenmarkCph(), DKCopenhagenLbl, 'DK', CopenhagenLbl, ''); + InsertExpenseLocation(ExpenseLocation, Domestic(), DomesticLbl, '', '', ''); + InsertExpenseLocation(ExpenseLocation, FranceAll(), FranceLbl, 'FR', '', ''); + InsertExpenseLocation(ExpenseLocation, FranceParis(), FranceParisLbl, 'FR', ParisLbl, ''); + InsertExpenseLocation(ExpenseLocation, GermanyAll(), GermanyLbl, 'DE', '', ''); + InsertExpenseLocation(ExpenseLocation, UKLondon(), UKLondonAreaLbl, 'GB', LondonLbl, ''); + InsertExpenseLocation(ExpenseLocation, UKOther(), UKOtherLbl, 'GB', '', ''); + InsertExpenseLocation(ExpenseLocation, USAFlorida(), USAFloridaLbl, 'US', '', FLLbl); + InsertExpenseLocation(ExpenseLocation, USANY(), USANYLbl, 'US', NewYorkLbl, ''); + InsertExpenseLocation(ExpenseLocation, USAOther(), USAOtherLbl, 'US', '', ''); + InsertExpenseLocation(ExpenseLocation, UnitedArabEmiratesAll(), UnitedArabEmiratesAllLocationLbl, 'AE', '', ''); + InsertExpenseLocation(ExpenseLocation, AustriaAll(), AustriaAllLocationLbl, 'AT', '', ''); + InsertExpenseLocation(ExpenseLocation, AustraliaAll(), AustraliaAllLocationLbl, 'AU', '', ''); + InsertExpenseLocation(ExpenseLocation, BelgiumAll(), BelgiumAllLocationLbl, 'BE', '', ''); + InsertExpenseLocation(ExpenseLocation, BulgariaAll(), BulgariaAllLocationLbl, 'BG', '', ''); + InsertExpenseLocation(ExpenseLocation, BruneiDarussalamAll(), BruneiDarussalamAllLocationLbl, 'BN', '', ''); + InsertExpenseLocation(ExpenseLocation, BrazilAll(), BrazilAllLocationLbl, 'BR', '', ''); + InsertExpenseLocation(ExpenseLocation, SwitzerlandAll(), SwitzerlandAllLocationLbl, 'CH', '', ''); + InsertExpenseLocation(ExpenseLocation, SwitzerlandGeneva(), SwitzerlandGenevaLbl, 'CH', GenevaLbl, ''); + InsertExpenseLocation(ExpenseLocation, SwitzerlandZurich(), SwitzerlandZurichLbl, 'CH', ZurichLbl, ''); + InsertExpenseLocation(ExpenseLocation, ChinaAll(), ChinaAllLocationLbl, 'CN', '', ''); + InsertExpenseLocation(ExpenseLocation, CostaRicaAll(), CostaRicaAllLocationLbl, 'CR', '', ''); + InsertExpenseLocation(ExpenseLocation, CyprusAll(), CyprusAllLocationLbl, 'CY', '', ''); + InsertExpenseLocation(ExpenseLocation, CzechiaAll(), CzechiaAllLocationLbl, 'CZ', '', ''); + InsertExpenseLocation(ExpenseLocation, AlgeriaAll(), AlgeriaAllLocationLbl, 'DZ', '', ''); + InsertExpenseLocation(ExpenseLocation, EstoniaAll(), EstoniaAllLocationLbl, 'EE', '', ''); + InsertExpenseLocation(ExpenseLocation, GreeceAll(), GreeceAllLocationLbl, 'EL', '', ''); + InsertExpenseLocation(ExpenseLocation, SpainAll(), SpainAllLocationLbl, 'ES', '', ''); + InsertExpenseLocation(ExpenseLocation, FinlandAll(), FinlandAllLocationLbl, 'FI', '', ''); + InsertExpenseLocation(ExpenseLocation, FijiIslandsAll(), FijiIslandsAllLocationLbl, 'FJ', '', ''); + InsertExpenseLocation(ExpenseLocation, GreatBritainAll(), GreatBritainAllLocationLbl, 'GB', '', ''); + InsertExpenseLocation(ExpenseLocation, CroatiaAll(), CroatiaAllLocationLbl, 'HR', '', ''); + InsertExpenseLocation(ExpenseLocation, HungaryAll(), HungaryAllLocationLbl, 'HU', '', ''); + InsertExpenseLocation(ExpenseLocation, IndonesiaAll(), IndonesiaAllLocationLbl, 'ID', '', ''); + InsertExpenseLocation(ExpenseLocation, IrelandAll(), IrelandAllLocationLbl, 'IE', '', ''); + InsertExpenseLocation(ExpenseLocation, IndiaAll(), IndiaAllLocationLbl, 'IN', '', ''); + InsertExpenseLocation(ExpenseLocation, IcelandAll(), IcelandAllLocationLbl, 'IS', '', ''); + InsertExpenseLocation(ExpenseLocation, ItalyAll(), ItalyAllLocationLbl, 'IT', '', ''); + InsertExpenseLocation(ExpenseLocation, JapanAll(), JapanAllLocationLbl, 'JP', '', ''); + InsertExpenseLocation(ExpenseLocation, JapanTokyo(), JapanTokyoLbl, 'JP', TokyoLbl, ''); + InsertExpenseLocation(ExpenseLocation, KenyaAll(), KenyaAllLocationLbl, 'KE', '', ''); + InsertExpenseLocation(ExpenseLocation, LithuaniaAll(), LithuaniaAllLocationLbl, 'LT', '', ''); + InsertExpenseLocation(ExpenseLocation, LuxembourgAll(), LuxembourgAllLocationLbl, 'LU', '', ''); + InsertExpenseLocation(ExpenseLocation, LatviaAll(), LatviaAllLocationLbl, 'LV', '', ''); + InsertExpenseLocation(ExpenseLocation, MoroccoAll(), MoroccoAllLocationLbl, 'MA', '', ''); + InsertExpenseLocation(ExpenseLocation, MontenegroAll(), MontenegroAllLocationLbl, 'ME', '', ''); + InsertExpenseLocation(ExpenseLocation, MaltaAll(), MaltaAllLocationLbl, 'MT', '', ''); + InsertExpenseLocation(ExpenseLocation, MexicoAll(), MexicoAllLocationLbl, 'MX', '', ''); + InsertExpenseLocation(ExpenseLocation, MalaysiaAll(), MalaysiaAllLocationLbl, 'MY', '', ''); + InsertExpenseLocation(ExpenseLocation, MozambiqueAll(), MozambiqueAllLocationLbl, 'MZ', '', ''); + InsertExpenseLocation(ExpenseLocation, NigeriaAll(), NigeriaAllLocationLbl, 'NG', '', ''); + InsertExpenseLocation(ExpenseLocation, NorthernIrelandAll(), NorthernIrelandAllLocationLbl, 'NI', '', ''); + InsertExpenseLocation(ExpenseLocation, NetherlandsAll(), NetherlandsAllLocationLbl, 'NL', '', ''); + InsertExpenseLocation(ExpenseLocation, NorwayAll(), NorwayAllLocationLbl, 'NO', '', ''); + InsertExpenseLocation(ExpenseLocation, NorwayOslo(), NorwayOsloLbl, 'NO', OsloLbl, ''); + InsertExpenseLocation(ExpenseLocation, NewZealandAll(), NewZealandAllLocationLbl, 'NZ', '', ''); + InsertExpenseLocation(ExpenseLocation, PhilippinesAll(), PhilippinesAllLocationLbl, 'PH', '', ''); + InsertExpenseLocation(ExpenseLocation, PolandAll(), PolandAllLocationLbl, 'PL', '', ''); + InsertExpenseLocation(ExpenseLocation, PortugalAll(), PortugalAllLocationLbl, 'PT', '', ''); + InsertExpenseLocation(ExpenseLocation, RomaniaAll(), RomaniaAllLocationLbl, 'RO', '', ''); + InsertExpenseLocation(ExpenseLocation, SerbiaAll(), SerbiaAllLocationLbl, 'RS', '', ''); + InsertExpenseLocation(ExpenseLocation, RussiaAll(), RussiaAllLocationLbl, 'RU', '', ''); + InsertExpenseLocation(ExpenseLocation, SaudiArabiaAll(), SaudiArabiaAllLocationLbl, 'SA', '', ''); + InsertExpenseLocation(ExpenseLocation, SolomonIslandsAll(), SolomonIslandsAllLocationLbl, 'SB', '', ''); + InsertExpenseLocation(ExpenseLocation, SwedenAll(), SwedenAllLocationLbl, 'SE', '', ''); + InsertExpenseLocation(ExpenseLocation, SingaporeAll(), SingaporeAllLocationLbl, 'SG', '', ''); + InsertExpenseLocation(ExpenseLocation, SloveniaAll(), SloveniaAllLocationLbl, 'SI', '', ''); + InsertExpenseLocation(ExpenseLocation, SlovakiaAll(), SlovakiaAllLocationLbl, 'SK', '', ''); + InsertExpenseLocation(ExpenseLocation, SwazilandAll(), SwazilandAllLocationLbl, 'SZ', '', ''); + InsertExpenseLocation(ExpenseLocation, ThailandAll(), ThailandAllLocationLbl, 'TH', '', ''); + InsertExpenseLocation(ExpenseLocation, TunisiaAll(), TunisiaAllLocationLbl, 'TN', '', ''); + InsertExpenseLocation(ExpenseLocation, TurkiyeAll(), TurkiyeAllLocationLbl, 'TR', '', ''); + InsertExpenseLocation(ExpenseLocation, TanzaniaAll(), TanzaniaAllLocationLbl, 'TZ', '', ''); + InsertExpenseLocation(ExpenseLocation, UgandaAll(), UgandaAllLocationLbl, 'UG', '', ''); + InsertExpenseLocation(ExpenseLocation, VanuatuAll(), VanuatuAllLocationLbl, 'VU', '', ''); + InsertExpenseLocation(ExpenseLocation, SamoaAll(), SamoaAllLocationLbl, 'WS', '', ''); + InsertExpenseLocation(ExpenseLocation, SouthAfricaAll(), SouthAfricaAllLocationLbl, 'ZA', '', ''); + InsertExpenseLocation(ExpenseLocation, AfghanistanAll(), AfghanistanAllLocationLbl, 'AF', '', ''); + InsertExpenseLocation(ExpenseLocation, AlbaniaAll(), AlbaniaAllLocationLbl, 'AL', '', ''); + InsertExpenseLocation(ExpenseLocation, AndorraAll(), AndorraAllLocationLbl, 'AD', '', ''); + InsertExpenseLocation(ExpenseLocation, AngolaAll(), AngolaAllLocationLbl, 'AO', '', ''); + InsertExpenseLocation(ExpenseLocation, AnguillaAll(), AnguillaAllLocationLbl, 'AI', '', ''); + InsertExpenseLocation(ExpenseLocation, AntarcticaAll(), AntarcticaAllLocationLbl, 'AQ', '', ''); + InsertExpenseLocation(ExpenseLocation, AntiguaBarbudaAll(), AntiguaBarbudaAllLocationLbl, 'AG', '', ''); + InsertExpenseLocation(ExpenseLocation, ArgentinaAll(), ArgentinaAllLocationLbl, 'AR', '', ''); + InsertExpenseLocation(ExpenseLocation, ArmeniaAll(), ArmeniaAllLocationLbl, 'AM', '', ''); + InsertExpenseLocation(ExpenseLocation, ArubaAll(), ArubaAllLocationLbl, 'AW', '', ''); + InsertExpenseLocation(ExpenseLocation, AzerbaijanAll(), AzerbaijanAllLocationLbl, 'AZ', '', ''); + InsertExpenseLocation(ExpenseLocation, BahamasAll(), BahamasAllLocationLbl, 'BS', '', ''); + InsertExpenseLocation(ExpenseLocation, BahrainAll(), BahrainAllLocationLbl, 'BH', '', ''); + InsertExpenseLocation(ExpenseLocation, BangladeshAll(), BangladeshAllLocationLbl, 'BD', '', ''); + InsertExpenseLocation(ExpenseLocation, BarbadosAll(), BarbadosAllLocationLbl, 'BB', '', ''); + InsertExpenseLocation(ExpenseLocation, BelarusAll(), BelarusAllLocationLbl, 'BY', '', ''); + InsertExpenseLocation(ExpenseLocation, BelizeAll(), BelizeAllLocationLbl, 'BZ', '', ''); + InsertExpenseLocation(ExpenseLocation, BeninAll(), BeninAllLocationLbl, 'BJ', '', ''); + InsertExpenseLocation(ExpenseLocation, BermudaAll(), BermudaAllLocationLbl, 'BM', '', ''); + InsertExpenseLocation(ExpenseLocation, BhutanAll(), BhutanAllLocationLbl, 'BT', '', ''); + InsertExpenseLocation(ExpenseLocation, BoliviaAll(), BoliviaAllLocationLbl, 'BO', '', ''); + InsertExpenseLocation(ExpenseLocation, BonaireAll(), BonaireAllLocationLbl, 'BQ', '', ''); + InsertExpenseLocation(ExpenseLocation, BosniaHerzegovinaAll(), BosniaHerzegovinaAllLocationLbl, 'BA', '', ''); + InsertExpenseLocation(ExpenseLocation, BotswanaAll(), BotswanaAllLocationLbl, 'BW', '', ''); + InsertExpenseLocation(ExpenseLocation, BouvetIslandAll(), BouvetIslandAllLocationLbl, 'BV', '', ''); + InsertExpenseLocation(ExpenseLocation, BritishIndianOceanAll(), BritishIndianOceanAllLocationLbl, 'IO', '', ''); + InsertExpenseLocation(ExpenseLocation, BurkinaFasoAll(), BurkinaFasoAllLocationLbl, 'BF', '', ''); + InsertExpenseLocation(ExpenseLocation, BurundiAll(), BurundiAllLocationLbl, 'BI', '', ''); + InsertExpenseLocation(ExpenseLocation, CaboVerdeAll(), CaboVerdeAllLocationLbl, 'CV', '', ''); + InsertExpenseLocation(ExpenseLocation, CambodiaAll(), CambodiaAllLocationLbl, 'KH', '', ''); + InsertExpenseLocation(ExpenseLocation, CameroonAll(), CameroonAllLocationLbl, 'CM', '', ''); + InsertExpenseLocation(ExpenseLocation, CaymanIslandsAll(), CaymanIslandsAllLocationLbl, 'KY', '', ''); + InsertExpenseLocation(ExpenseLocation, CentralAfricanAll(), CentralAfricanAllLocationLbl, 'CF', '', ''); + InsertExpenseLocation(ExpenseLocation, ChadAll(), ChadAllLocationLbl, 'TD', '', ''); + InsertExpenseLocation(ExpenseLocation, ChileAll(), ChileAllLocationLbl, 'CL', '', ''); + InsertExpenseLocation(ExpenseLocation, ChristmasIslandAll(), ChristmasIslandAllLocationLbl, 'CX', '', ''); + InsertExpenseLocation(ExpenseLocation, CocosIslandsAll(), CocosIslandsAllLocationLbl, 'CC', '', ''); + InsertExpenseLocation(ExpenseLocation, ColombiaAll(), ColombiaAllLocationLbl, 'CO', '', ''); + InsertExpenseLocation(ExpenseLocation, ComorosAll(), ComorosAllLocationLbl, 'KM', '', ''); + InsertExpenseLocation(ExpenseLocation, CongoDRAll(), CongoDRAllLocationLbl, 'CD', '', ''); + InsertExpenseLocation(ExpenseLocation, CongoAll(), CongoAllLocationLbl, 'CG', '', ''); + InsertExpenseLocation(ExpenseLocation, CookIslandsAll(), CookIslandsAllLocationLbl, 'CK', '', ''); + InsertExpenseLocation(ExpenseLocation, CubaAll(), CubaAllLocationLbl, 'CU', '', ''); + InsertExpenseLocation(ExpenseLocation, CuracaoAll(), CuracaoAllLocationLbl, 'CW', '', ''); + InsertExpenseLocation(ExpenseLocation, CotedIvoireAll(), CotedIvoireAllLocationLbl, 'CI', '', ''); + InsertExpenseLocation(ExpenseLocation, DjiboutiAll(), DjiboutiAllLocationLbl, 'DJ', '', ''); + InsertExpenseLocation(ExpenseLocation, DominicaAll(), DominicaAllLocationLbl, 'DM', '', ''); + InsertExpenseLocation(ExpenseLocation, DominicanAll(), DominicanAllLocationLbl, 'DO', '', ''); + InsertExpenseLocation(ExpenseLocation, EcuadorAll(), EcuadorAllLocationLbl, 'EC', '', ''); + InsertExpenseLocation(ExpenseLocation, EgyptAll(), EgyptAllLocationLbl, 'EG', '', ''); + InsertExpenseLocation(ExpenseLocation, ElSalvadorAll(), ElSalvadorAllLocationLbl, 'SV', '', ''); + InsertExpenseLocation(ExpenseLocation, EquatorialGuineaAll(), EquatorialGuineaAllLocationLbl, 'GQ', '', ''); + InsertExpenseLocation(ExpenseLocation, EritreaAll(), EritreaAllLocationLbl, 'ER', '', ''); + InsertExpenseLocation(ExpenseLocation, EthiopiaAll(), EthiopiaAllLocationLbl, 'ET', '', ''); + InsertExpenseLocation(ExpenseLocation, FalklandIslandsAll(), FalklandIslandsAllLocationLbl, 'FK', '', ''); + InsertExpenseLocation(ExpenseLocation, FaroeIslandsAll(), FaroeIslandsAllLocationLbl, 'FO', '', ''); + InsertExpenseLocation(ExpenseLocation, FrenchGuianaAll(), FrenchGuianaAllLocationLbl, 'GF', '', ''); + InsertExpenseLocation(ExpenseLocation, FrenchPolynesiaAll(), FrenchPolynesiaAllLocationLbl, 'PF', '', ''); + InsertExpenseLocation(ExpenseLocation, FrenchSouthernAll(), FrenchSouthernAllLocationLbl, 'TF', '', ''); + InsertExpenseLocation(ExpenseLocation, GabonAll(), GabonAllLocationLbl, 'GA', '', ''); + InsertExpenseLocation(ExpenseLocation, GambiaAll(), GambiaAllLocationLbl, 'GM', '', ''); + InsertExpenseLocation(ExpenseLocation, GeorgiaAll(), GeorgiaAllLocationLbl, 'GE', '', ''); + InsertExpenseLocation(ExpenseLocation, GhanaAll(), GhanaAllLocationLbl, 'GH', '', ''); + InsertExpenseLocation(ExpenseLocation, GibraltarAll(), GibraltarAllLocationLbl, 'GI', '', ''); + InsertExpenseLocation(ExpenseLocation, GreenlandAll(), GreenlandAllLocationLbl, 'GL', '', ''); + InsertExpenseLocation(ExpenseLocation, GrenadaAll(), GrenadaAllLocationLbl, 'GD', '', ''); + InsertExpenseLocation(ExpenseLocation, GuadeloupeAll(), GuadeloupeAllLocationLbl, 'GP', '', ''); + InsertExpenseLocation(ExpenseLocation, GuamAll(), GuamAllLocationLbl, 'GU', '', ''); + InsertExpenseLocation(ExpenseLocation, GuatemalaAll(), GuatemalaAllLocationLbl, 'GT', '', ''); + InsertExpenseLocation(ExpenseLocation, GuernseyAll(), GuernseyAllLocationLbl, 'GG', '', ''); + InsertExpenseLocation(ExpenseLocation, GuineaAll(), GuineaAllLocationLbl, 'GN', '', ''); + InsertExpenseLocation(ExpenseLocation, GuineaBissauAll(), GuineaBissauAllLocationLbl, 'GW', '', ''); + InsertExpenseLocation(ExpenseLocation, GuyanaAll(), GuyanaAllLocationLbl, 'GY', '', ''); + InsertExpenseLocation(ExpenseLocation, HaitiAll(), HaitiAllLocationLbl, 'HT', '', ''); + InsertExpenseLocation(ExpenseLocation, HeardIslandAll(), HeardIslandAllLocationLbl, 'HM', '', ''); + InsertExpenseLocation(ExpenseLocation, HolySeeAll(), HolySeeAllLocationLbl, 'VA', '', ''); + InsertExpenseLocation(ExpenseLocation, HondurasAll(), HondurasAllLocationLbl, 'HN', '', ''); + InsertExpenseLocation(ExpenseLocation, HongKongAll(), HongKongAllLocationLbl, 'HK', '', ''); + InsertExpenseLocation(ExpenseLocation, IsleManAll(), IsleManAllLocationLbl, 'IM', '', ''); + InsertExpenseLocation(ExpenseLocation, IsraelAll(), IsraelAllLocationLbl, 'IL', '', ''); + InsertExpenseLocation(ExpenseLocation, JamaicaAll(), JamaicaAllLocationLbl, 'JM', '', ''); + InsertExpenseLocation(ExpenseLocation, JerseyAll(), JerseyAllLocationLbl, 'JE', '', ''); + InsertExpenseLocation(ExpenseLocation, JordanAll(), JordanAllLocationLbl, 'JO', '', ''); + InsertExpenseLocation(ExpenseLocation, KazakhstanAll(), KazakhstanAllLocationLbl, 'KZ', '', ''); + InsertExpenseLocation(ExpenseLocation, KiribatiAll(), KiribatiAllLocationLbl, 'KI', '', ''); + InsertExpenseLocation(ExpenseLocation, NorthKoreaAll(), NorthKoreaAllLocationLbl, 'KP', '', ''); + InsertExpenseLocation(ExpenseLocation, SouthKoreaAll(), SouthKoreaAllLocationLbl, 'KR', '', ''); + InsertExpenseLocation(ExpenseLocation, KuwaitAll(), KuwaitAllLocationLbl, 'KW', '', ''); + InsertExpenseLocation(ExpenseLocation, KyrgyzstanAll(), KyrgyzstanAllLocationLbl, 'KG', '', ''); + InsertExpenseLocation(ExpenseLocation, LaosAll(), LaosAllLocationLbl, 'LA', '', ''); + InsertExpenseLocation(ExpenseLocation, LebanonAll(), LebanonAllLocationLbl, 'LB', '', ''); + InsertExpenseLocation(ExpenseLocation, LesothoAll(), LesothoAllLocationLbl, 'LS', '', ''); + InsertExpenseLocation(ExpenseLocation, LiberiaAll(), LiberiaAllLocationLbl, 'LR', '', ''); + InsertExpenseLocation(ExpenseLocation, LibyaAll(), LibyaAllLocationLbl, 'LY', '', ''); + InsertExpenseLocation(ExpenseLocation, LiechtensteinAll(), LiechtensteinAllLocationLbl, 'LI', '', ''); + InsertExpenseLocation(ExpenseLocation, MacaoAll(), MacaoAllLocationLbl, 'MO', '', ''); + InsertExpenseLocation(ExpenseLocation, MadagascarAll(), MadagascarAllLocationLbl, 'MG', '', ''); + InsertExpenseLocation(ExpenseLocation, MalawiAll(), MalawiAllLocationLbl, 'MW', '', ''); + InsertExpenseLocation(ExpenseLocation, MaldivesAll(), MaldivesAllLocationLbl, 'MV', '', ''); + InsertExpenseLocation(ExpenseLocation, MaliAll(), MaliAllLocationLbl, 'ML', '', ''); + InsertExpenseLocation(ExpenseLocation, MarshallIslandsAll(), MarshallIslandsAllLocationLbl, 'MH', '', ''); + InsertExpenseLocation(ExpenseLocation, MartiniqueAll(), MartiniqueAllLocationLbl, 'MQ', '', ''); + InsertExpenseLocation(ExpenseLocation, MauritaniaAll(), MauritaniaAllLocationLbl, 'MR', '', ''); + InsertExpenseLocation(ExpenseLocation, MauritiusAll(), MauritiusAllLocationLbl, 'MU', '', ''); + InsertExpenseLocation(ExpenseLocation, MayotteAll(), MayotteAllLocationLbl, 'YT', '', ''); + InsertExpenseLocation(ExpenseLocation, MicronesiaAll(), MicronesiaAllLocationLbl, 'FM', '', ''); + InsertExpenseLocation(ExpenseLocation, MoldovaAll(), MoldovaAllLocationLbl, 'MD', '', ''); + InsertExpenseLocation(ExpenseLocation, MonacoAll(), MonacoAllLocationLbl, 'MC', '', ''); + InsertExpenseLocation(ExpenseLocation, MongoliaAll(), MongoliaAllLocationLbl, 'MN', '', ''); + InsertExpenseLocation(ExpenseLocation, MontserratAll(), MontserratAllLocationLbl, 'MS', '', ''); + InsertExpenseLocation(ExpenseLocation, MyanmarAll(), MyanmarAllLocationLbl, 'MM', '', ''); + InsertExpenseLocation(ExpenseLocation, NamibiaAll(), NamibiaAllLocationLbl, 'NA', '', ''); + InsertExpenseLocation(ExpenseLocation, NauruAll(), NauruAllLocationLbl, 'NR', '', ''); + InsertExpenseLocation(ExpenseLocation, NepalAll(), NepalAllLocationLbl, 'NP', '', ''); + InsertExpenseLocation(ExpenseLocation, NewCaledoniaAll(), NewCaledoniaAllLocationLbl, 'NC', '', ''); + InsertExpenseLocation(ExpenseLocation, NigerAll(), NigerAllLocationLbl, 'NE', '', ''); + InsertExpenseLocation(ExpenseLocation, NiueAll(), NiueAllLocationLbl, 'NU', '', ''); + InsertExpenseLocation(ExpenseLocation, NorfolkIslandAll(), NorfolkIslandAllLocationLbl, 'NF', '', ''); + InsertExpenseLocation(ExpenseLocation, NorthMacedoniaAll(), NorthMacedoniaAllLocationLbl, 'MK', '', ''); + InsertExpenseLocation(ExpenseLocation, NorthernMarianaAll(), NorthernMarianaAllLocationLbl, 'MP', '', ''); + InsertExpenseLocation(ExpenseLocation, OmanAll(), OmanAllLocationLbl, 'OM', '', ''); + InsertExpenseLocation(ExpenseLocation, PakistanAll(), PakistanAllLocationLbl, 'PK', '', ''); + InsertExpenseLocation(ExpenseLocation, PalauAll(), PalauAllLocationLbl, 'PW', '', ''); + InsertExpenseLocation(ExpenseLocation, PalestineAll(), PalestineAllLocationLbl, 'PS', '', ''); + InsertExpenseLocation(ExpenseLocation, PanamaAll(), PanamaAllLocationLbl, 'PA', '', ''); + InsertExpenseLocation(ExpenseLocation, PapuaNewGuineaAll(), PapuaNewGuineaAllLocationLbl, 'PG', '', ''); + InsertExpenseLocation(ExpenseLocation, ParaguayAll(), ParaguayAllLocationLbl, 'PY', '', ''); + InsertExpenseLocation(ExpenseLocation, PeruAll(), PeruAllLocationLbl, 'PE', '', ''); + InsertExpenseLocation(ExpenseLocation, PitcairnAll(), PitcairnAllLocationLbl, 'PN', '', ''); + InsertExpenseLocation(ExpenseLocation, PuertoRicoAll(), PuertoRicoAllLocationLbl, 'PR', '', ''); + InsertExpenseLocation(ExpenseLocation, QatarAll(), QatarAllLocationLbl, 'QA', '', ''); + InsertExpenseLocation(ExpenseLocation, RwandaAll(), RwandaAllLocationLbl, 'RW', '', ''); + InsertExpenseLocation(ExpenseLocation, ReunionAll(), ReunionAllLocationLbl, 'RE', '', ''); + InsertExpenseLocation(ExpenseLocation, SaintBarthelemyAll(), SaintBarthelemyAllLocationLbl, 'BL', '', ''); + InsertExpenseLocation(ExpenseLocation, SaintHelenaAll(), SaintHelenaAllLocationLbl, 'SH', '', ''); + InsertExpenseLocation(ExpenseLocation, SaintKittsNevisAll(), SaintKittsNevisAllLocationLbl, 'KN', '', ''); + InsertExpenseLocation(ExpenseLocation, SaintLuciaAll(), SaintLuciaAllLocationLbl, 'LC', '', ''); + InsertExpenseLocation(ExpenseLocation, SaintMartinAll(), SaintMartinAllLocationLbl, 'MF', '', ''); + InsertExpenseLocation(ExpenseLocation, SaintPierreQuelonAll(), SaintPierreQuelonAllLocationLbl, 'PM', '', ''); + InsertExpenseLocation(ExpenseLocation, SaintVincentAll(), SaintVincentAllLocationLbl, 'VC', '', ''); + InsertExpenseLocation(ExpenseLocation, SanMarinoAll(), SanMarinoAllLocationLbl, 'SM', '', ''); + InsertExpenseLocation(ExpenseLocation, SaoTomeAll(), SaoTomeAllLocationLbl, 'ST', '', ''); + InsertExpenseLocation(ExpenseLocation, SenegalAll(), SenegalAllLocationLbl, 'SN', '', ''); + InsertExpenseLocation(ExpenseLocation, SeychellesAll(), SeychellesAllLocationLbl, 'SC', '', ''); + InsertExpenseLocation(ExpenseLocation, SierraLeoneAll(), SierraLeoneAllLocationLbl, 'SL', '', ''); + InsertExpenseLocation(ExpenseLocation, SintMaartenAll(), SintMaartenAllLocationLbl, 'SX', '', ''); + InsertExpenseLocation(ExpenseLocation, SomaliaAll(), SomaliaAllLocationLbl, 'SO', '', ''); + InsertExpenseLocation(ExpenseLocation, SouthGeorgiaAll(), SouthGeorgiaAllLocationLbl, 'GS', '', ''); + InsertExpenseLocation(ExpenseLocation, SouthSudanAll(), SouthSudanAllLocationLbl, 'SS', '', ''); + InsertExpenseLocation(ExpenseLocation, SriLankaAll(), SriLankaAllLocationLbl, 'LK', '', ''); + InsertExpenseLocation(ExpenseLocation, SudanAll(), SudanAllLocationLbl, 'SD', '', ''); + InsertExpenseLocation(ExpenseLocation, SurinameAll(), SurinameAllLocationLbl, 'SR', '', ''); + InsertExpenseLocation(ExpenseLocation, SvalbardJanMayenAll(), SvalbardJanMayenAllLocationLbl, 'SJ', '', ''); + InsertExpenseLocation(ExpenseLocation, SyriaAll(), SyriaAllLocationLbl, 'SY', '', ''); + InsertExpenseLocation(ExpenseLocation, TaiwanAll(), TaiwanAllLocationLbl, 'TW', '', ''); + InsertExpenseLocation(ExpenseLocation, TajikistanAll(), TajikistanAllLocationLbl, 'TJ', '', ''); + InsertExpenseLocation(ExpenseLocation, TimorLesteAll(), TimorLesteAllLocationLbl, 'TL', '', ''); + InsertExpenseLocation(ExpenseLocation, TogoAll(), TogoAllLocationLbl, 'TG', '', ''); + InsertExpenseLocation(ExpenseLocation, TokelauAll(), TokelauAllLocationLbl, 'TK', '', ''); + InsertExpenseLocation(ExpenseLocation, TongaAll(), TongaAllLocationLbl, 'TO', '', ''); + InsertExpenseLocation(ExpenseLocation, TrinidadTobagoAll(), TrinidadTobagoAllLocationLbl, 'TT', '', ''); + InsertExpenseLocation(ExpenseLocation, TurkmenistanAll(), TurkmenistanAllLocationLbl, 'TM', '', ''); + InsertExpenseLocation(ExpenseLocation, TurksCalcosAll(), TurksCalcosAllLocationLbl, 'TC', '', ''); + InsertExpenseLocation(ExpenseLocation, TuvaluAll(), TuvaluAllLocationLbl, 'TV', '', ''); + InsertExpenseLocation(ExpenseLocation, UkraineAll(), UkraineAllLocationLbl, 'UA', '', ''); + InsertExpenseLocation(ExpenseLocation, USMinorOutlyingAll(), USMinorOutlyingAllLocationLbl, 'UM', '', ''); + InsertExpenseLocation(ExpenseLocation, UruguayAll(), UruguayAllLocationLbl, 'UY', '', ''); + InsertExpenseLocation(ExpenseLocation, UzbekistanAll(), UzbekistanAllLocationLbl, 'UZ', '', ''); + InsertExpenseLocation(ExpenseLocation, VenezuelAll(), VenezuelAllLocationLbl, 'VE', '', ''); + InsertExpenseLocation(ExpenseLocation, VietnamAll(), VietnamAllLocationLbl, 'VN', '', ''); + InsertExpenseLocation(ExpenseLocation, VirginIslandsBrAll(), VirginIslandsBrAllLocationLbl, 'VG', '', ''); + InsertExpenseLocation(ExpenseLocation, VirginIslandsUSAll(), VirginIslandsUSAllLocationLbl, 'VI', '', ''); + InsertExpenseLocation(ExpenseLocation, WallisatunaAll(), WallisatunaAllLocationLbl, 'WF', '', ''); + InsertExpenseLocation(ExpenseLocation, WesternSaharaAll(), WesternSaharaAllLocationLbl, 'EH', '', ''); + InsertExpenseLocation(ExpenseLocation, YemenAll(), YemenAllLocationLbl, 'YE', '', ''); + InsertExpenseLocation(ExpenseLocation, ZambiaAll(), ZambiaAllLocationLbl, 'ZM', '', ''); + InsertExpenseLocation(ExpenseLocation, ZimbabweAll(), ZimbabweAllLocationLbl, 'ZW', '', ''); + InsertExpenseLocation(ExpenseLocation, AlandIslandsAll(), AlandIslandsAllLocationLbl, 'AX', '', ''); end; var @@ -283,7 +284,7 @@ codeunit 8208 "Create Expense Location" DenmarkCphTok: Label 'DK-COPENHAGEN', MaxLength = 20, Locked = true; DenmarkLbl: Label 'Denmark', MaxLength = 100; DKCopenhagenLbl: Label 'Denmark - Copenhagen', MaxLength = 100; - CopenhagenLbl: Label 'Copenhagen', MaxLength = 100; + CopenhagenLbl: Label 'Copenhagen', MaxLength = 30; DomesticTok: Label 'DOMESTIC', MaxLength = 20, Locked = true; FranceAllTok: Label 'FRANCE-ALL', MaxLength = 20, Locked = true; FranceParisTok: Label 'FRANCE-PARIS', MaxLength = 20, Locked = true; @@ -297,7 +298,7 @@ codeunit 8208 "Create Expense Location" DomesticLbl: Label 'Domestic', MaxLength = 100; FranceLbl: Label 'France', MaxLength = 100; FranceParisLbl: Label 'France - Paris', MaxLength = 100; - ParisLbl: Label 'Paris', MaxLength = 100; + ParisLbl: Label 'Paris', MaxLength = 30; GermanyLbl: Label 'Germany', MaxLength = 100; UKLondonAreaLbl: Label 'United Kingdom - London area', MaxLength = 100; LondonLbl: Label 'London', MaxLength = 30; @@ -323,10 +324,10 @@ codeunit 8208 "Create Expense Location" SwitzerlandAllLocationLbl: Label 'Switzerland - all location', MaxLength = 100; SwitzerlandGenevaTok: Label 'SWITZERLAND-GENEVA', MaxLength = 20, Locked = true; SwitzerlandGenevaLbl: Label 'Switzerland - Geneva', MaxLength = 100; - GenevaLbl: Label 'Geneva', MaxLength = 100; + GenevaLbl: Label 'Geneva', MaxLength = 30; SwitzerlandZurichTok: Label 'SWITZERLAND-ZURICH', MaxLength = 20, Locked = true; SwitzerlandZurichLbl: Label 'Switzerland - Zurich', MaxLength = 100; - ZurichLbl: Label 'Zurich', MaxLength = 100; + ZurichLbl: Label 'Zurich', MaxLength = 30; ChinaAllTok: Label 'CHINA-ALL', MaxLength = 20, Locked = true; ChinaAllLocationLbl: Label 'China - all location', MaxLength = 100; CostaRicaAllTok: Label 'COSTARICA-ALL', MaxLength = 20, Locked = true; @@ -367,7 +368,7 @@ codeunit 8208 "Create Expense Location" JapanAllLocationLbl: Label 'Japan - all location', MaxLength = 100; JapanTokyoTok: Label 'JAPAN-TOKYO', MaxLength = 20, Locked = true; JapanTokyoLbl: Label 'Japan - Tokyo', MaxLength = 100; - TokyoLbl: Label 'Tokyo', MaxLength = 100; + TokyoLbl: Label 'Tokyo', MaxLength = 30; KenyaAllTok: Label 'KENYA-ALL', MaxLength = 20, Locked = true; KenyaAllLocationLbl: Label 'Kenya - all location', MaxLength = 100; LithuaniaAllTok: Label 'LITHUANIA-ALL', MaxLength = 20, Locked = true; @@ -398,7 +399,7 @@ codeunit 8208 "Create Expense Location" NorwayAllLocationLbl: Label 'Norway - all location', MaxLength = 100; NorwayOsloTok: Label 'NORWAY-OSLO', MaxLength = 20, Locked = true; NorwayOsloLbl: Label 'Norway - Oslo', MaxLength = 100; - OsloLbl: Label 'Norway - Oslo', MaxLength = 100; + OsloLbl: Label 'Norway - Oslo', MaxLength = 30; NewZealandAllTok: Label 'NEWZEALAND-ALL', MaxLength = 20, Locked = true; NewZealandAllLocationLbl: Label 'New Zealand - all location', MaxLength = 100; PhilippinesAllTok: Label 'PHILIPPINES-ALL', MaxLength = 20, Locked = true; @@ -800,6 +801,19 @@ codeunit 8208 "Create Expense Location" AlandIslandsAllTok: Label 'ALANDISLANDS-ALL', MaxLength = 20, Locked = true; AlandIslandsAllLocationLbl: Label 'Aland Islands - all location', MaxLength = 100; + + local procedure InsertExpenseLocation(var ExpenseLocation: Record "Expense Location"; Code: Code[20]; Description: Text[100]; CountryRegionCode: Code[10]; City: Text[30]; County: Text[30]) + begin + if ExpenseLocation.Get(Code) then + exit; + ExpenseLocation.Validate("No.", Code); + ExpenseLocation.Validate(Description, Description); + ExpenseLocation.Validate("Country/Region Code", CountryRegionCode); + ExpenseLocation.Validate("City", City); + ExpenseLocation.Validate("County", County); + ExpenseLocation.Insert(true); + end; + procedure UnitedArabEmiratesAll(): Code[20] begin exit(UnitedArabEmiratesAllTok); diff --git a/src/Apps/W1/ExpenseAgent/app/src/Setup/Codeunits/CreateExpenseRuleCondition.Codeunit.al b/src/Apps/W1/ExpenseAgent/app/src/Setup/Codeunits/CreateExpenseRuleCondition.Codeunit.al new file mode 100644 index 00000000000..d692db574c6 --- /dev/null +++ b/src/Apps/W1/ExpenseAgent/app/src/Setup/Codeunits/CreateExpenseRuleCondition.Codeunit.al @@ -0,0 +1,298 @@ +// ------------------------------------------------------------------------------------------------ +// Copyright (c) Microsoft Corporation. All rights reserved. +// Licensed under the MIT License. See License.txt in the project root for license information. +// ------------------------------------------------------------------------------------------------ +namespace Microsoft.ExpenseAgent; + +codeunit 7105 "Create Expense Rule Condition" +{ + InherentEntitlements = X; + InherentPermissions = X; + TableNo = "Expense Rule Condition"; + + trigger OnRun() + begin + CreateExpenseRuleConditions(Rec); + end; + + internal procedure CreateExpenseRuleConditions(var ExpenseRulecondition: Record "Expense Rule Condition") + var + CreateExpenseCategories: Codeunit "Create Expense Categories"; + CreateExpenseLocation: Codeunit "Create Expense Location"; + begin + InsertExpenseRuleCondition(ExpenseRuleCondition, CreateExpenseCategories.GetENTERTAINTxt(), '', 0D, 10000, Enum::"Expense Rule Condition Type"::"At Least Justification Needed", 500); + InsertExpenseRuleCondition(ExpenseRuleCondition, CreateExpenseCategories.GetENTERTAINTxt(), '', 0D, 20000, Enum::"Expense Rule Condition Type"::"Max Amount", 1000); + InsertExpenseRuleCondition(ExpenseRuleCondition, CreateExpenseCategories.GetMileageTxt(), '', 0D, 10000, Enum::"Expense Rule Condition Type"::"Max Amount", 300); + InsertExpenseRuleCondition(ExpenseRuleCondition, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.UnitedArabEmiratesAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 100); + InsertExpenseRuleCondition(ExpenseRuleCondition, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.AustriaAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 100); + InsertExpenseRuleCondition(ExpenseRuleCondition, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.AustraliaAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 100); + InsertExpenseRuleCondition(ExpenseRuleCondition, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.BelgiumAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 100); + InsertExpenseRuleCondition(ExpenseRuleCondition, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.BulgariaAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 100); + InsertExpenseRuleCondition(ExpenseRuleCondition, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.BruneiDarussalamAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 100); + InsertExpenseRuleCondition(ExpenseRuleCondition, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.BrazilAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 100); + InsertExpenseRuleCondition(ExpenseRuleCondition, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.SwitzerlandAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 100); + InsertExpenseRuleCondition(ExpenseRuleCondition, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.SwitzerlandGeneva(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 100); + InsertExpenseRuleCondition(ExpenseRuleCondition, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.SwitzerlandGeneva(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 100); + InsertExpenseRuleCondition(ExpenseRuleCondition, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.ChinaAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 100); + InsertExpenseRuleCondition(ExpenseRuleCondition, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.CostaRicaAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 100); + InsertExpenseRuleCondition(ExpenseRuleCondition, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.CyprusAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 100); + InsertExpenseRuleCondition(ExpenseRuleCondition, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.CzechiaAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 100); + InsertExpenseRuleCondition(ExpenseRuleCondition, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.AlgeriaAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 100); + InsertExpenseRuleCondition(ExpenseRuleCondition, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.EstoniaAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 100); + InsertExpenseRuleCondition(ExpenseRuleCondition, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.GreeceAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 100); + InsertExpenseRuleCondition(ExpenseRuleCondition, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.SpainAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 100); + InsertExpenseRuleCondition(ExpenseRuleCondition, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.FinlandAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 100); + InsertExpenseRuleCondition(ExpenseRuleCondition, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.FijiIslandsAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 100); + InsertExpenseRuleCondition(ExpenseRuleCondition, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.GreatBritainAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 100); + InsertExpenseRuleCondition(ExpenseRuleCondition, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.CroatiaAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 100); + InsertExpenseRuleCondition(ExpenseRuleCondition, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.HungaryAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 100); + InsertExpenseRuleCondition(ExpenseRuleCondition, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.IndonesiaAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 100); + InsertExpenseRuleCondition(ExpenseRuleCondition, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.IrelandAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 100); + InsertExpenseRuleCondition(ExpenseRuleCondition, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.IndiaAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 100); + InsertExpenseRuleCondition(ExpenseRuleCondition, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.IcelandAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 100); + InsertExpenseRuleCondition(ExpenseRuleCondition, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.ItalyAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 100); + InsertExpenseRuleCondition(ExpenseRuleCondition, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.JapanAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 100); + InsertExpenseRuleCondition(ExpenseRuleCondition, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.JapanTokyo(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 100); + InsertExpenseRuleCondition(ExpenseRuleCondition, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.KenyaAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 100); + InsertExpenseRuleCondition(ExpenseRuleCondition, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.LithuaniaAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 100); + InsertExpenseRuleCondition(ExpenseRuleCondition, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.LuxembourgAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 100); + InsertExpenseRuleCondition(ExpenseRuleCondition, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.LatviaAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 100); + InsertExpenseRuleCondition(ExpenseRuleCondition, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.MoroccoAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 100); + InsertExpenseRuleCondition(ExpenseRuleCondition, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.MontenegroAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 100); + InsertExpenseRuleCondition(ExpenseRuleCondition, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.MaltaAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 100); + InsertExpenseRuleCondition(ExpenseRuleCondition, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.MexicoAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 100); + InsertExpenseRuleCondition(ExpenseRuleCondition, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.MalaysiaAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 100); + InsertExpenseRuleCondition(ExpenseRuleCondition, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.MozambiqueAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 100); + InsertExpenseRuleCondition(ExpenseRuleCondition, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.NigeriaAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 100); + InsertExpenseRuleCondition(ExpenseRuleCondition, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.NorthernIrelandAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 100); + InsertExpenseRuleCondition(ExpenseRuleCondition, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.NetherlandsAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 100); + InsertExpenseRuleCondition(ExpenseRuleCondition, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.NorwayAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 100); + InsertExpenseRuleCondition(ExpenseRuleCondition, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.NorwayOslo(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 100); + InsertExpenseRuleCondition(ExpenseRuleCondition, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.NewZealandAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 100); + InsertExpenseRuleCondition(ExpenseRuleCondition, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.PhilippinesAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 100); + InsertExpenseRuleCondition(ExpenseRuleCondition, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.PolandAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 100); + InsertExpenseRuleCondition(ExpenseRuleCondition, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.PortugalAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 100); + InsertExpenseRuleCondition(ExpenseRuleCondition, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.RomaniaAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 100); + InsertExpenseRuleCondition(ExpenseRuleCondition, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.SerbiaAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 100); + InsertExpenseRuleCondition(ExpenseRuleCondition, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.RussiaAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 100); + InsertExpenseRuleCondition(ExpenseRuleCondition, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.SaudiArabiaAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 100); + InsertExpenseRuleCondition(ExpenseRuleCondition, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.SolomonIslandsAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 100); + InsertExpenseRuleCondition(ExpenseRuleCondition, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.SwedenAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 100); + InsertExpenseRuleCondition(ExpenseRuleCondition, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.SingaporeAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 100); + InsertExpenseRuleCondition(ExpenseRuleCondition, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.SloveniaAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 100); + InsertExpenseRuleCondition(ExpenseRuleCondition, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.SlovakiaAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 100); + InsertExpenseRuleCondition(ExpenseRuleCondition, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.SwazilandAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 100); + InsertExpenseRuleCondition(ExpenseRuleCondition, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.ThailandAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 100); + InsertExpenseRuleCondition(ExpenseRuleCondition, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.TunisiaAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 100); + InsertExpenseRuleCondition(ExpenseRuleCondition, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.TurkiyeAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 100); + InsertExpenseRuleCondition(ExpenseRuleCondition, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.TanzaniaAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 100); + InsertExpenseRuleCondition(ExpenseRuleCondition, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.UgandaAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 100); + InsertExpenseRuleCondition(ExpenseRuleCondition, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.VanuatuAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 100); + InsertExpenseRuleCondition(ExpenseRuleCondition, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.SamoaAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 100); + InsertExpenseRuleCondition(ExpenseRuleCondition, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.SouthAfricaAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 100); + InsertExpenseRuleCondition(ExpenseRuleCondition, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.AfghanistanAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 100); + InsertExpenseRuleCondition(ExpenseRuleCondition, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.AlbaniaAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 100); + InsertExpenseRuleCondition(ExpenseRuleCondition, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.AndorraAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 100); + InsertExpenseRuleCondition(ExpenseRuleCondition, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.AngolaAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 100); + InsertExpenseRuleCondition(ExpenseRuleCondition, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.AnguillaAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 100); + InsertExpenseRuleCondition(ExpenseRuleCondition, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.AntarcticaAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 100); + InsertExpenseRuleCondition(ExpenseRuleCondition, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.AntiguaBarbudaAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 100); + InsertExpenseRuleCondition(ExpenseRuleCondition, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.ArgentinaAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 100); + InsertExpenseRuleCondition(ExpenseRuleCondition, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.ArmeniaAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 100); + InsertExpenseRuleCondition(ExpenseRuleCondition, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.ArubaAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 100); + InsertExpenseRuleCondition(ExpenseRuleCondition, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.AzerbaijanAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 100); + InsertExpenseRuleCondition(ExpenseRuleCondition, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.BahamasAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 100); + InsertExpenseRuleCondition(ExpenseRuleCondition, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.BahrainAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 100); + InsertExpenseRuleCondition(ExpenseRuleCondition, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.BangladeshAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 100); + InsertExpenseRuleCondition(ExpenseRuleCondition, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.BarbadosAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 100); + InsertExpenseRuleCondition(ExpenseRuleCondition, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.BelarusAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 100); + InsertExpenseRuleCondition(ExpenseRuleCondition, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.BelizeAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 100); + InsertExpenseRuleCondition(ExpenseRuleCondition, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.BeninAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 100); + InsertExpenseRuleCondition(ExpenseRuleCondition, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.BermudaAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 100); + InsertExpenseRuleCondition(ExpenseRuleCondition, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.BhutanAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 100); + InsertExpenseRuleCondition(ExpenseRuleCondition, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.BoliviaAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 100); + InsertExpenseRuleCondition(ExpenseRuleCondition, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.BonaireAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 100); + InsertExpenseRuleCondition(ExpenseRuleCondition, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.BosniaHerzegovinaAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 100); + InsertExpenseRuleCondition(ExpenseRuleCondition, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.BotswanaAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 100); + InsertExpenseRuleCondition(ExpenseRuleCondition, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.BouvetIslandAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 100); + InsertExpenseRuleCondition(ExpenseRuleCondition, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.BritishIndianOceanAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 100); + InsertExpenseRuleCondition(ExpenseRuleCondition, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.BurkinaFasoAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 100); + InsertExpenseRuleCondition(ExpenseRuleCondition, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.BurundiAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 100); + InsertExpenseRuleCondition(ExpenseRuleCondition, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.CaboVerdeAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 100); + InsertExpenseRuleCondition(ExpenseRuleCondition, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.CambodiaAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 100); + InsertExpenseRuleCondition(ExpenseRuleCondition, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.CameroonAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 100); + InsertExpenseRuleCondition(ExpenseRuleCondition, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.CaymanIslandsAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 100); + InsertExpenseRuleCondition(ExpenseRuleCondition, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.CentralAfricanAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 100); + InsertExpenseRuleCondition(ExpenseRuleCondition, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.ChadAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 100); + InsertExpenseRuleCondition(ExpenseRuleCondition, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.ChileAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 100); + InsertExpenseRuleCondition(ExpenseRuleCondition, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.ChristmasIslandAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 100); + InsertExpenseRuleCondition(ExpenseRuleCondition, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.CocosIslandsAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 100); + InsertExpenseRuleCondition(ExpenseRuleCondition, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.ColombiaAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 100); + InsertExpenseRuleCondition(ExpenseRuleCondition, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.ComorosAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 100); + InsertExpenseRuleCondition(ExpenseRuleCondition, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.CongoDRAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 100); + InsertExpenseRuleCondition(ExpenseRuleCondition, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.CongoAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 100); + InsertExpenseRuleCondition(ExpenseRuleCondition, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.CookIslandsAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 100); + InsertExpenseRuleCondition(ExpenseRuleCondition, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.CubaAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 100); + InsertExpenseRuleCondition(ExpenseRuleCondition, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.CuracaoAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 100); + InsertExpenseRuleCondition(ExpenseRuleCondition, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.CotedIvoireAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 100); + InsertExpenseRuleCondition(ExpenseRuleCondition, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.DjiboutiAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 100); + InsertExpenseRuleCondition(ExpenseRuleCondition, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.DominicaAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 100); + InsertExpenseRuleCondition(ExpenseRuleCondition, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.DominicanAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 100); + InsertExpenseRuleCondition(ExpenseRuleCondition, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.EcuadorAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 100); + InsertExpenseRuleCondition(ExpenseRuleCondition, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.EgyptAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 100); + InsertExpenseRuleCondition(ExpenseRuleCondition, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.ElSalvadorAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 100); + InsertExpenseRuleCondition(ExpenseRuleCondition, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.EquatorialGuineaAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 100); + InsertExpenseRuleCondition(ExpenseRuleCondition, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.EritreaAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 100); + InsertExpenseRuleCondition(ExpenseRuleCondition, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.EthiopiaAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 100); + InsertExpenseRuleCondition(ExpenseRuleCondition, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.FalklandIslandsAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 100); + InsertExpenseRuleCondition(ExpenseRuleCondition, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.FaroeIslandsAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 100); + InsertExpenseRuleCondition(ExpenseRuleCondition, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.FrenchGuianaAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 100); + InsertExpenseRuleCondition(ExpenseRuleCondition, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.FrenchPolynesiaAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 100); + InsertExpenseRuleCondition(ExpenseRuleCondition, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.FrenchSouthernAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 100); + InsertExpenseRuleCondition(ExpenseRuleCondition, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.GabonAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 100); + InsertExpenseRuleCondition(ExpenseRuleCondition, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.GambiaAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 100); + InsertExpenseRuleCondition(ExpenseRuleCondition, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.GeorgiaAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 100); + InsertExpenseRuleCondition(ExpenseRuleCondition, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.GhanaAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 100); + InsertExpenseRuleCondition(ExpenseRuleCondition, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.GibraltarAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 100); + InsertExpenseRuleCondition(ExpenseRuleCondition, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.GreenlandAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 100); + InsertExpenseRuleCondition(ExpenseRuleCondition, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.GrenadaAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 100); + InsertExpenseRuleCondition(ExpenseRuleCondition, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.GuadeloupeAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 100); + InsertExpenseRuleCondition(ExpenseRuleCondition, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.GuamAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 100); + InsertExpenseRuleCondition(ExpenseRuleCondition, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.GuatemalaAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 100); + InsertExpenseRuleCondition(ExpenseRuleCondition, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.GuernseyAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 100); + InsertExpenseRuleCondition(ExpenseRuleCondition, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.GuineaAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 100); + InsertExpenseRuleCondition(ExpenseRuleCondition, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.GuineaBissauAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 100); + InsertExpenseRuleCondition(ExpenseRuleCondition, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.GuyanaAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 100); + InsertExpenseRuleCondition(ExpenseRuleCondition, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.HaitiAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 100); + InsertExpenseRuleCondition(ExpenseRuleCondition, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.HeardIslandAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 100); + InsertExpenseRuleCondition(ExpenseRuleCondition, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.HolySeeAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 100); + InsertExpenseRuleCondition(ExpenseRuleCondition, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.HondurasAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 100); + InsertExpenseRuleCondition(ExpenseRuleCondition, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.HongKongAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 100); + InsertExpenseRuleCondition(ExpenseRuleCondition, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.IsleManAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 100); + InsertExpenseRuleCondition(ExpenseRuleCondition, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.IsraelAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 100); + InsertExpenseRuleCondition(ExpenseRuleCondition, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.JamaicaAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 100); + InsertExpenseRuleCondition(ExpenseRuleCondition, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.JerseyAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 100); + InsertExpenseRuleCondition(ExpenseRuleCondition, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.JordanAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 100); + InsertExpenseRuleCondition(ExpenseRuleCondition, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.KazakhstanAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 100); + InsertExpenseRuleCondition(ExpenseRuleCondition, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.KiribatiAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 100); + InsertExpenseRuleCondition(ExpenseRuleCondition, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.NorthKoreaAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 100); + InsertExpenseRuleCondition(ExpenseRuleCondition, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.SouthKoreaAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 100); + InsertExpenseRuleCondition(ExpenseRuleCondition, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.KuwaitAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 100); + InsertExpenseRuleCondition(ExpenseRuleCondition, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.KyrgyzstanAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 100); + InsertExpenseRuleCondition(ExpenseRuleCondition, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.LaosAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 100); + InsertExpenseRuleCondition(ExpenseRuleCondition, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.LebanonAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 100); + InsertExpenseRuleCondition(ExpenseRuleCondition, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.LesothoAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 100); + InsertExpenseRuleCondition(ExpenseRuleCondition, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.LiberiaAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 100); + InsertExpenseRuleCondition(ExpenseRuleCondition, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.LibyaAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 100); + InsertExpenseRuleCondition(ExpenseRuleCondition, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.LiechtensteinAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 100); + InsertExpenseRuleCondition(ExpenseRuleCondition, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.MacaoAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 100); + InsertExpenseRuleCondition(ExpenseRuleCondition, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.MadagascarAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 100); + InsertExpenseRuleCondition(ExpenseRuleCondition, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.MalawiAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 100); + InsertExpenseRuleCondition(ExpenseRuleCondition, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.MaldivesAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 100); + InsertExpenseRuleCondition(ExpenseRuleCondition, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.MaliAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 100); + InsertExpenseRuleCondition(ExpenseRuleCondition, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.MarshallIslandsAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 100); + InsertExpenseRuleCondition(ExpenseRuleCondition, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.MartiniqueAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 100); + InsertExpenseRuleCondition(ExpenseRuleCondition, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.MauritaniaAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 100); + InsertExpenseRuleCondition(ExpenseRuleCondition, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.MauritiusAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 100); + InsertExpenseRuleCondition(ExpenseRuleCondition, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.MayotteAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 100); + InsertExpenseRuleCondition(ExpenseRuleCondition, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.MicronesiaAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 100); + InsertExpenseRuleCondition(ExpenseRuleCondition, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.MoldovaAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 100); + InsertExpenseRuleCondition(ExpenseRuleCondition, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.MonacoAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 100); + InsertExpenseRuleCondition(ExpenseRuleCondition, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.MongoliaAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 100); + InsertExpenseRuleCondition(ExpenseRuleCondition, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.MontserratAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 100); + InsertExpenseRuleCondition(ExpenseRuleCondition, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.MyanmarAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 100); + InsertExpenseRuleCondition(ExpenseRuleCondition, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.NamibiaAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 100); + InsertExpenseRuleCondition(ExpenseRuleCondition, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.NauruAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 100); + InsertExpenseRuleCondition(ExpenseRuleCondition, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.NepalAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 100); + InsertExpenseRuleCondition(ExpenseRuleCondition, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.NewCaledoniaAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 100); + InsertExpenseRuleCondition(ExpenseRuleCondition, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.NigerAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 100); + InsertExpenseRuleCondition(ExpenseRuleCondition, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.NiueAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 100); + InsertExpenseRuleCondition(ExpenseRuleCondition, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.NorfolkIslandAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 100); + InsertExpenseRuleCondition(ExpenseRuleCondition, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.NorthMacedoniaAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 100); + InsertExpenseRuleCondition(ExpenseRuleCondition, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.NorthernMarianaAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 100); + InsertExpenseRuleCondition(ExpenseRuleCondition, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.OmanAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 100); + InsertExpenseRuleCondition(ExpenseRuleCondition, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.PakistanAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 100); + InsertExpenseRuleCondition(ExpenseRuleCondition, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.PalauAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 100); + InsertExpenseRuleCondition(ExpenseRuleCondition, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.PalestineAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 100); + InsertExpenseRuleCondition(ExpenseRuleCondition, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.PanamaAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 100); + InsertExpenseRuleCondition(ExpenseRuleCondition, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.PapuaNewGuineaAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 100); + InsertExpenseRuleCondition(ExpenseRuleCondition, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.ParaguayAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 100); + InsertExpenseRuleCondition(ExpenseRuleCondition, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.PeruAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 100); + InsertExpenseRuleCondition(ExpenseRuleCondition, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.PitcairnAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 100); + InsertExpenseRuleCondition(ExpenseRuleCondition, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.PuertoRicoAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 100); + InsertExpenseRuleCondition(ExpenseRuleCondition, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.QatarAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 100); + InsertExpenseRuleCondition(ExpenseRuleCondition, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.RwandaAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 100); + InsertExpenseRuleCondition(ExpenseRuleCondition, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.ReunionAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 100); + InsertExpenseRuleCondition(ExpenseRuleCondition, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.SaintBarthelemyAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 100); + InsertExpenseRuleCondition(ExpenseRuleCondition, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.SaintHelenaAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 100); + InsertExpenseRuleCondition(ExpenseRuleCondition, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.SaintKittsNevisAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 100); + InsertExpenseRuleCondition(ExpenseRuleCondition, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.SaintLuciaAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 100); + InsertExpenseRuleCondition(ExpenseRuleCondition, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.SaintMartinAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 100); + InsertExpenseRuleCondition(ExpenseRuleCondition, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.SaintPierreQuelonAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 100); + InsertExpenseRuleCondition(ExpenseRuleCondition, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.SaintVincentAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 100); + InsertExpenseRuleCondition(ExpenseRuleCondition, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.SanMarinoAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 100); + InsertExpenseRuleCondition(ExpenseRuleCondition, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.SaoTomeAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 100); + InsertExpenseRuleCondition(ExpenseRuleCondition, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.SenegalAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 100); + InsertExpenseRuleCondition(ExpenseRuleCondition, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.SeychellesAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 100); + InsertExpenseRuleCondition(ExpenseRuleCondition, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.SierraLeoneAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 100); + InsertExpenseRuleCondition(ExpenseRuleCondition, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.SintMaartenAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 100); + InsertExpenseRuleCondition(ExpenseRuleCondition, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.SomaliaAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 100); + InsertExpenseRuleCondition(ExpenseRuleCondition, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.SouthGeorgiaAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 100); + InsertExpenseRuleCondition(ExpenseRuleCondition, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.SouthSudanAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 100); + InsertExpenseRuleCondition(ExpenseRuleCondition, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.SriLankaAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 100); + InsertExpenseRuleCondition(ExpenseRuleCondition, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.SudanAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 100); + InsertExpenseRuleCondition(ExpenseRuleCondition, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.SurinameAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 100); + InsertExpenseRuleCondition(ExpenseRuleCondition, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.SvalbardJanMayenAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 100); + InsertExpenseRuleCondition(ExpenseRuleCondition, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.SyriaAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 100); + InsertExpenseRuleCondition(ExpenseRuleCondition, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.TaiwanAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 100); + InsertExpenseRuleCondition(ExpenseRuleCondition, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.TajikistanAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 100); + InsertExpenseRuleCondition(ExpenseRuleCondition, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.TimorLesteAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 100); + InsertExpenseRuleCondition(ExpenseRuleCondition, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.TogoAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 100); + InsertExpenseRuleCondition(ExpenseRuleCondition, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.TokelauAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 100); + InsertExpenseRuleCondition(ExpenseRuleCondition, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.TongaAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 100); + InsertExpenseRuleCondition(ExpenseRuleCondition, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.TrinidadTobagoAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 100); + InsertExpenseRuleCondition(ExpenseRuleCondition, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.TurkmenistanAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 100); + InsertExpenseRuleCondition(ExpenseRuleCondition, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.TurksCalcosAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 100); + InsertExpenseRuleCondition(ExpenseRuleCondition, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.TuvaluAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 100); + InsertExpenseRuleCondition(ExpenseRuleCondition, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.UkraineAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 100); + InsertExpenseRuleCondition(ExpenseRuleCondition, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.USMinorOutlyingAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 100); + InsertExpenseRuleCondition(ExpenseRuleCondition, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.UruguayAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 100); + InsertExpenseRuleCondition(ExpenseRuleCondition, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.UzbekistanAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 100); + InsertExpenseRuleCondition(ExpenseRuleCondition, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.VenezuelAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 100); + InsertExpenseRuleCondition(ExpenseRuleCondition, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.VietnamAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 100); + InsertExpenseRuleCondition(ExpenseRuleCondition, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.VirginIslandsBrAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 100); + InsertExpenseRuleCondition(ExpenseRuleCondition, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.VirginIslandsUSAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 100); + InsertExpenseRuleCondition(ExpenseRuleCondition, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.WallisatunaAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 100); + InsertExpenseRuleCondition(ExpenseRuleCondition, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.WesternSaharaAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 100); + InsertExpenseRuleCondition(ExpenseRuleCondition, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.YemenAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 100); + InsertExpenseRuleCondition(ExpenseRuleCondition, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.ZambiaAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 100); + InsertExpenseRuleCondition(ExpenseRuleCondition, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.ZimbabweAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 100); + InsertExpenseRuleCondition(ExpenseRuleCondition, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.AlandIslandsAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 100); + InsertExpenseRuleCondition(ExpenseRuleCondition, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.CanadaAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 100); + InsertExpenseRuleCondition(ExpenseRuleCondition, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.DenmarkAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 100); + InsertExpenseRuleCondition(ExpenseRuleCondition, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.DenmarkCph(), 0D, 20000, Enum::"Expense Rule Condition Type"::"Daily Rate", 100); + InsertExpenseRuleCondition(ExpenseRuleCondition, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.Domestic(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 100); + InsertExpenseRuleCondition(ExpenseRuleCondition, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.FranceAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 100); + InsertExpenseRuleCondition(ExpenseRuleCondition, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.FranceParis(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 100); + InsertExpenseRuleCondition(ExpenseRuleCondition, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.GermanyAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 100); + InsertExpenseRuleCondition(ExpenseRuleCondition, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.UKLondon(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 100); + InsertExpenseRuleCondition(ExpenseRuleCondition, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.UKOther(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 100); + InsertExpenseRuleCondition(ExpenseRuleCondition, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.USAFlorida(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 100); + InsertExpenseRuleCondition(ExpenseRuleCondition, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.USANY(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 100); + InsertExpenseRuleCondition(ExpenseRuleCondition, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.USAOther(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 100); + end; + + local procedure InsertExpenseRuleCondition(var ExpenseRuleCondition: Record "Expense Rule Condition"; ExpenseCategoryCode: Code[20]; ExpenseLocationCode: Code[20]; EffectiveDate: Date; LineNo: Integer; ConditionType: Enum "Expense Rule Condition Type"; Value: Decimal) + begin + if ExpenseRuleCondition.Get(ExpenseCategoryCode, ExpenseLocationCode, EffectiveDate, LineNo) then + exit; + ExpenseRuleCondition.Validate("Expense Category Code", ExpenseCategoryCode); + ExpenseRuleCondition.Validate("Expense Location", ExpenseLocationCode); + ExpenseRuleCondition.Validate("Effective Date", EffectiveDate); + ExpenseRuleCondition.Validate("Line No.", LineNo); + ExpenseRuleCondition.Validate("Condition Type", ConditionType); + ExpenseRuleCondition.Validate(Value, Value); + ExpenseRuleCondition.Insert(true); + end; + +} \ No newline at end of file diff --git a/src/Apps/W1/ExpenseAgent/app/src/Setup/Codeunits/CreateExpenseRuleHeader.Codeunit.al b/src/Apps/W1/ExpenseAgent/app/src/Setup/Codeunits/CreateExpenseRuleHeader.Codeunit.al new file mode 100644 index 00000000000..2bffae6e213 --- /dev/null +++ b/src/Apps/W1/ExpenseAgent/app/src/Setup/Codeunits/CreateExpenseRuleHeader.Codeunit.al @@ -0,0 +1,301 @@ +// ------------------------------------------------------------------------------------------------ +// Copyright (c) Microsoft Corporation. All rights reserved. +// Licensed under the MIT License. See License.txt in the project root for license information. +// ------------------------------------------------------------------------------------------------ +namespace Microsoft.ExpenseAgent; + +codeunit 7107 "Create Expense Rule Header" +{ + InherentEntitlements = X; + InherentPermissions = X; + TableNo = "Expense Rule Header"; + + trigger OnRun() + begin + InsertExpenseRuleHeaders(Rec); + end; + + internal procedure InsertExpenseRuleHeaders(var ExpenseRuleHeader: Record "Expense Rule Header") + var + CreateExpenseCategories: Codeunit "Create Expense Categories"; + CreateExpenseLocation: Codeunit "Create Expense Location"; + begin + InsertExpenseRuleHeader(ExpenseRuleHeader, CreateExpenseCategories.GetENTERTAINTxt(), '', 0D, Enum::"Expense Justification"::"Against Conditions", false, '', '', ''); + InsertExpenseRuleHeader(ExpenseRuleHeader, CreateExpenseCategories.GetHOTELSTxt(), '', 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + InsertExpenseRuleHeader(ExpenseRuleHeader, CreateExpenseCategories.GetMileageTxt(), '', 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + InsertExpenseRuleHeader(ExpenseRuleHeader, CreateExpenseCategories.GetMoraleTxt(), '', 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + InsertExpenseRuleHeader(ExpenseRuleHeader, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.UnitedArabEmiratesAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + InsertExpenseRuleHeader(ExpenseRuleHeader, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.AustriaAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + InsertExpenseRuleHeader(ExpenseRuleHeader, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.AustraliaAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + InsertExpenseRuleHeader(ExpenseRuleHeader, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.BelgiumAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + InsertExpenseRuleHeader(ExpenseRuleHeader, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.BulgariaAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + InsertExpenseRuleHeader(ExpenseRuleHeader, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.BruneiDarussalamAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + InsertExpenseRuleHeader(ExpenseRuleHeader, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.BrazilAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + InsertExpenseRuleHeader(ExpenseRuleHeader, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.SwitzerlandAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + InsertExpenseRuleHeader(ExpenseRuleHeader, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.SwitzerlandGeneva(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + InsertExpenseRuleHeader(ExpenseRuleHeader, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.SwitzerlandZurich(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + InsertExpenseRuleHeader(ExpenseRuleHeader, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.ChinaAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + InsertExpenseRuleHeader(ExpenseRuleHeader, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.CostaRicaAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + InsertExpenseRuleHeader(ExpenseRuleHeader, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.CyprusAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + InsertExpenseRuleHeader(ExpenseRuleHeader, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.CzechiaAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + InsertExpenseRuleHeader(ExpenseRuleHeader, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.AlgeriaAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + InsertExpenseRuleHeader(ExpenseRuleHeader, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.EstoniaAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + InsertExpenseRuleHeader(ExpenseRuleHeader, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.GreeceAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + InsertExpenseRuleHeader(ExpenseRuleHeader, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.SpainAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + InsertExpenseRuleHeader(ExpenseRuleHeader, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.FinlandAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + InsertExpenseRuleHeader(ExpenseRuleHeader, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.FijiIslandsAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + InsertExpenseRuleHeader(ExpenseRuleHeader, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.GreatBritainAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + InsertExpenseRuleHeader(ExpenseRuleHeader, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.CroatiaAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + InsertExpenseRuleHeader(ExpenseRuleHeader, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.HungaryAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + InsertExpenseRuleHeader(ExpenseRuleHeader, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.IndonesiaAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + InsertExpenseRuleHeader(ExpenseRuleHeader, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.IrelandAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + InsertExpenseRuleHeader(ExpenseRuleHeader, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.IndiaAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + InsertExpenseRuleHeader(ExpenseRuleHeader, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.IcelandAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + InsertExpenseRuleHeader(ExpenseRuleHeader, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.ItalyAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + InsertExpenseRuleHeader(ExpenseRuleHeader, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.JapanAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + InsertExpenseRuleHeader(ExpenseRuleHeader, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.JapanTokyo(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + InsertExpenseRuleHeader(ExpenseRuleHeader, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.KenyaAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + InsertExpenseRuleHeader(ExpenseRuleHeader, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.LithuaniaAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + InsertExpenseRuleHeader(ExpenseRuleHeader, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.LuxembourgAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + InsertExpenseRuleHeader(ExpenseRuleHeader, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.LatviaAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + InsertExpenseRuleHeader(ExpenseRuleHeader, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.MoroccoAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + InsertExpenseRuleHeader(ExpenseRuleHeader, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.MontenegroAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + InsertExpenseRuleHeader(ExpenseRuleHeader, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.MaltaAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + InsertExpenseRuleHeader(ExpenseRuleHeader, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.MexicoAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + InsertExpenseRuleHeader(ExpenseRuleHeader, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.MalaysiaAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + InsertExpenseRuleHeader(ExpenseRuleHeader, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.MozambiqueAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + InsertExpenseRuleHeader(ExpenseRuleHeader, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.NigeriaAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + InsertExpenseRuleHeader(ExpenseRuleHeader, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.NorthernIrelandAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + InsertExpenseRuleHeader(ExpenseRuleHeader, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.NetherlandsAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + InsertExpenseRuleHeader(ExpenseRuleHeader, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.NorwayAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + InsertExpenseRuleHeader(ExpenseRuleHeader, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.NorwayOslo(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + InsertExpenseRuleHeader(ExpenseRuleHeader, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.NewZealandAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + InsertExpenseRuleHeader(ExpenseRuleHeader, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.PhilippinesAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + InsertExpenseRuleHeader(ExpenseRuleHeader, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.PolandAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + InsertExpenseRuleHeader(ExpenseRuleHeader, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.PortugalAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + InsertExpenseRuleHeader(ExpenseRuleHeader, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.RomaniaAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + InsertExpenseRuleHeader(ExpenseRuleHeader, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.SerbiaAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + InsertExpenseRuleHeader(ExpenseRuleHeader, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.RussiaAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + InsertExpenseRuleHeader(ExpenseRuleHeader, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.SaudiArabiaAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + InsertExpenseRuleHeader(ExpenseRuleHeader, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.SolomonIslandsAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + InsertExpenseRuleHeader(ExpenseRuleHeader, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.SwedenAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + InsertExpenseRuleHeader(ExpenseRuleHeader, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.SingaporeAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + InsertExpenseRuleHeader(ExpenseRuleHeader, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.SloveniaAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + InsertExpenseRuleHeader(ExpenseRuleHeader, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.SlovakiaAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + InsertExpenseRuleHeader(ExpenseRuleHeader, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.SwazilandAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + InsertExpenseRuleHeader(ExpenseRuleHeader, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.ThailandAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + InsertExpenseRuleHeader(ExpenseRuleHeader, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.TunisiaAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + InsertExpenseRuleHeader(ExpenseRuleHeader, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.TurkiyeAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + InsertExpenseRuleHeader(ExpenseRuleHeader, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.TanzaniaAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + InsertExpenseRuleHeader(ExpenseRuleHeader, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.UgandaAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + InsertExpenseRuleHeader(ExpenseRuleHeader, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.VanuatuAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + InsertExpenseRuleHeader(ExpenseRuleHeader, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.SamoaAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + InsertExpenseRuleHeader(ExpenseRuleHeader, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.SouthAfricaAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + InsertExpenseRuleHeader(ExpenseRuleHeader, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.AfghanistanAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + InsertExpenseRuleHeader(ExpenseRuleHeader, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.AlbaniaAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + InsertExpenseRuleHeader(ExpenseRuleHeader, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.AndorraAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + InsertExpenseRuleHeader(ExpenseRuleHeader, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.AngolaAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + InsertExpenseRuleHeader(ExpenseRuleHeader, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.AnguillaAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + InsertExpenseRuleHeader(ExpenseRuleHeader, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.AntarcticaAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + InsertExpenseRuleHeader(ExpenseRuleHeader, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.AntiguaBarbudaAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + InsertExpenseRuleHeader(ExpenseRuleHeader, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.ArgentinaAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + InsertExpenseRuleHeader(ExpenseRuleHeader, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.ArmeniaAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + InsertExpenseRuleHeader(ExpenseRuleHeader, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.ArubaAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + InsertExpenseRuleHeader(ExpenseRuleHeader, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.AzerbaijanAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + InsertExpenseRuleHeader(ExpenseRuleHeader, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.BahamasAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + InsertExpenseRuleHeader(ExpenseRuleHeader, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.BahrainAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + InsertExpenseRuleHeader(ExpenseRuleHeader, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.BangladeshAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + InsertExpenseRuleHeader(ExpenseRuleHeader, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.BarbadosAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + InsertExpenseRuleHeader(ExpenseRuleHeader, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.BelarusAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + InsertExpenseRuleHeader(ExpenseRuleHeader, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.BelizeAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + InsertExpenseRuleHeader(ExpenseRuleHeader, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.BeninAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + InsertExpenseRuleHeader(ExpenseRuleHeader, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.BermudaAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + InsertExpenseRuleHeader(ExpenseRuleHeader, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.BhutanAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + InsertExpenseRuleHeader(ExpenseRuleHeader, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.BoliviaAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + InsertExpenseRuleHeader(ExpenseRuleHeader, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.BonaireAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + InsertExpenseRuleHeader(ExpenseRuleHeader, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.BosniaHerzegovinaAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + InsertExpenseRuleHeader(ExpenseRuleHeader, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.BotswanaAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + InsertExpenseRuleHeader(ExpenseRuleHeader, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.BouvetIslandAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + InsertExpenseRuleHeader(ExpenseRuleHeader, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.BritishIndianOceanAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + InsertExpenseRuleHeader(ExpenseRuleHeader, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.BurkinaFasoAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + InsertExpenseRuleHeader(ExpenseRuleHeader, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.BurundiAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + InsertExpenseRuleHeader(ExpenseRuleHeader, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.CaboVerdeAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + InsertExpenseRuleHeader(ExpenseRuleHeader, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.CambodiaAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + InsertExpenseRuleHeader(ExpenseRuleHeader, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.CameroonAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + InsertExpenseRuleHeader(ExpenseRuleHeader, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.CaymanIslandsAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + InsertExpenseRuleHeader(ExpenseRuleHeader, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.CentralAfricanAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + InsertExpenseRuleHeader(ExpenseRuleHeader, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.ChadAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + InsertExpenseRuleHeader(ExpenseRuleHeader, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.ChileAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + InsertExpenseRuleHeader(ExpenseRuleHeader, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.ChristmasIslandAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + InsertExpenseRuleHeader(ExpenseRuleHeader, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.CocosIslandsAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + InsertExpenseRuleHeader(ExpenseRuleHeader, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.ColombiaAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + InsertExpenseRuleHeader(ExpenseRuleHeader, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.ComorosAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + InsertExpenseRuleHeader(ExpenseRuleHeader, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.CongoDRAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + InsertExpenseRuleHeader(ExpenseRuleHeader, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.CongoAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + InsertExpenseRuleHeader(ExpenseRuleHeader, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.CookIslandsAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + InsertExpenseRuleHeader(ExpenseRuleHeader, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.CubaAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + InsertExpenseRuleHeader(ExpenseRuleHeader, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.CuracaoAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + InsertExpenseRuleHeader(ExpenseRuleHeader, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.CotedIvoireAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + InsertExpenseRuleHeader(ExpenseRuleHeader, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.DjiboutiAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + InsertExpenseRuleHeader(ExpenseRuleHeader, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.DominicaAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + InsertExpenseRuleHeader(ExpenseRuleHeader, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.DominicanAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + InsertExpenseRuleHeader(ExpenseRuleHeader, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.EcuadorAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + InsertExpenseRuleHeader(ExpenseRuleHeader, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.EgyptAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + InsertExpenseRuleHeader(ExpenseRuleHeader, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.ElSalvadorAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + InsertExpenseRuleHeader(ExpenseRuleHeader, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.EquatorialGuineaAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + InsertExpenseRuleHeader(ExpenseRuleHeader, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.EritreaAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + InsertExpenseRuleHeader(ExpenseRuleHeader, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.EthiopiaAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + InsertExpenseRuleHeader(ExpenseRuleHeader, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.FalklandIslandsAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + InsertExpenseRuleHeader(ExpenseRuleHeader, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.FaroeIslandsAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + InsertExpenseRuleHeader(ExpenseRuleHeader, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.FrenchGuianaAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + InsertExpenseRuleHeader(ExpenseRuleHeader, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.FrenchPolynesiaAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + InsertExpenseRuleHeader(ExpenseRuleHeader, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.FrenchSouthernAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + InsertExpenseRuleHeader(ExpenseRuleHeader, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.GabonAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + InsertExpenseRuleHeader(ExpenseRuleHeader, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.GambiaAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + InsertExpenseRuleHeader(ExpenseRuleHeader, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.GeorgiaAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + InsertExpenseRuleHeader(ExpenseRuleHeader, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.GhanaAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + InsertExpenseRuleHeader(ExpenseRuleHeader, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.GibraltarAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + InsertExpenseRuleHeader(ExpenseRuleHeader, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.GreenlandAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + InsertExpenseRuleHeader(ExpenseRuleHeader, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.GrenadaAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + InsertExpenseRuleHeader(ExpenseRuleHeader, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.GuadeloupeAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + InsertExpenseRuleHeader(ExpenseRuleHeader, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.GuamAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + InsertExpenseRuleHeader(ExpenseRuleHeader, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.GuatemalaAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + InsertExpenseRuleHeader(ExpenseRuleHeader, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.GuernseyAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + InsertExpenseRuleHeader(ExpenseRuleHeader, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.GuineaAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + InsertExpenseRuleHeader(ExpenseRuleHeader, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.GuineaBissauAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + InsertExpenseRuleHeader(ExpenseRuleHeader, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.GuyanaAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + InsertExpenseRuleHeader(ExpenseRuleHeader, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.HaitiAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + InsertExpenseRuleHeader(ExpenseRuleHeader, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.HeardIslandAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + InsertExpenseRuleHeader(ExpenseRuleHeader, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.HolySeeAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + InsertExpenseRuleHeader(ExpenseRuleHeader, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.HondurasAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + InsertExpenseRuleHeader(ExpenseRuleHeader, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.HongKongAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + InsertExpenseRuleHeader(ExpenseRuleHeader, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.IsleManAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + InsertExpenseRuleHeader(ExpenseRuleHeader, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.IsraelAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + InsertExpenseRuleHeader(ExpenseRuleHeader, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.JamaicaAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + InsertExpenseRuleHeader(ExpenseRuleHeader, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.JerseyAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + InsertExpenseRuleHeader(ExpenseRuleHeader, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.JordanAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + InsertExpenseRuleHeader(ExpenseRuleHeader, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.KazakhstanAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + InsertExpenseRuleHeader(ExpenseRuleHeader, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.KiribatiAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + InsertExpenseRuleHeader(ExpenseRuleHeader, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.NorthKoreaAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + InsertExpenseRuleHeader(ExpenseRuleHeader, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.SouthKoreaAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + InsertExpenseRuleHeader(ExpenseRuleHeader, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.KuwaitAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + InsertExpenseRuleHeader(ExpenseRuleHeader, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.KyrgyzstanAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + InsertExpenseRuleHeader(ExpenseRuleHeader, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.LaosAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + InsertExpenseRuleHeader(ExpenseRuleHeader, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.LebanonAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + InsertExpenseRuleHeader(ExpenseRuleHeader, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.LesothoAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + InsertExpenseRuleHeader(ExpenseRuleHeader, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.LiberiaAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + InsertExpenseRuleHeader(ExpenseRuleHeader, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.LibyaAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + InsertExpenseRuleHeader(ExpenseRuleHeader, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.LiechtensteinAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + InsertExpenseRuleHeader(ExpenseRuleHeader, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.MacaoAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + InsertExpenseRuleHeader(ExpenseRuleHeader, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.MadagascarAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + InsertExpenseRuleHeader(ExpenseRuleHeader, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.MalawiAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + InsertExpenseRuleHeader(ExpenseRuleHeader, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.MaldivesAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + InsertExpenseRuleHeader(ExpenseRuleHeader, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.MaliAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + InsertExpenseRuleHeader(ExpenseRuleHeader, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.MarshallIslandsAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + InsertExpenseRuleHeader(ExpenseRuleHeader, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.MartiniqueAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + InsertExpenseRuleHeader(ExpenseRuleHeader, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.MauritaniaAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + InsertExpenseRuleHeader(ExpenseRuleHeader, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.MauritiusAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + InsertExpenseRuleHeader(ExpenseRuleHeader, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.MayotteAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + InsertExpenseRuleHeader(ExpenseRuleHeader, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.MicronesiaAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + InsertExpenseRuleHeader(ExpenseRuleHeader, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.MoldovaAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + InsertExpenseRuleHeader(ExpenseRuleHeader, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.MonacoAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + InsertExpenseRuleHeader(ExpenseRuleHeader, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.MongoliaAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + InsertExpenseRuleHeader(ExpenseRuleHeader, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.MontserratAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + InsertExpenseRuleHeader(ExpenseRuleHeader, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.MyanmarAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + InsertExpenseRuleHeader(ExpenseRuleHeader, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.NamibiaAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + InsertExpenseRuleHeader(ExpenseRuleHeader, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.NauruAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + InsertExpenseRuleHeader(ExpenseRuleHeader, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.NepalAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + InsertExpenseRuleHeader(ExpenseRuleHeader, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.NewCaledoniaAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + InsertExpenseRuleHeader(ExpenseRuleHeader, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.NigerAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + InsertExpenseRuleHeader(ExpenseRuleHeader, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.NiueAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + InsertExpenseRuleHeader(ExpenseRuleHeader, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.NorfolkIslandAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + InsertExpenseRuleHeader(ExpenseRuleHeader, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.NorthMacedoniaAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + InsertExpenseRuleHeader(ExpenseRuleHeader, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.NorthernMarianaAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + InsertExpenseRuleHeader(ExpenseRuleHeader, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.OmanAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + InsertExpenseRuleHeader(ExpenseRuleHeader, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.PakistanAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + InsertExpenseRuleHeader(ExpenseRuleHeader, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.PalauAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + InsertExpenseRuleHeader(ExpenseRuleHeader, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.PalestineAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + InsertExpenseRuleHeader(ExpenseRuleHeader, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.PanamaAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + InsertExpenseRuleHeader(ExpenseRuleHeader, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.PapuaNewGuineaAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + InsertExpenseRuleHeader(ExpenseRuleHeader, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.ParaguayAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + InsertExpenseRuleHeader(ExpenseRuleHeader, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.PeruAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + InsertExpenseRuleHeader(ExpenseRuleHeader, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.PitcairnAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + InsertExpenseRuleHeader(ExpenseRuleHeader, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.PuertoRicoAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + InsertExpenseRuleHeader(ExpenseRuleHeader, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.QatarAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + InsertExpenseRuleHeader(ExpenseRuleHeader, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.RwandaAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + InsertExpenseRuleHeader(ExpenseRuleHeader, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.ReunionAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + InsertExpenseRuleHeader(ExpenseRuleHeader, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.SaintBarthelemyAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + InsertExpenseRuleHeader(ExpenseRuleHeader, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.SaintHelenaAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + InsertExpenseRuleHeader(ExpenseRuleHeader, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.SaintKittsNevisAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + InsertExpenseRuleHeader(ExpenseRuleHeader, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.SaintLuciaAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + InsertExpenseRuleHeader(ExpenseRuleHeader, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.SaintMartinAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + InsertExpenseRuleHeader(ExpenseRuleHeader, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.SaintPierreQuelonAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + InsertExpenseRuleHeader(ExpenseRuleHeader, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.SaintVincentAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + InsertExpenseRuleHeader(ExpenseRuleHeader, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.SanMarinoAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + InsertExpenseRuleHeader(ExpenseRuleHeader, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.SaoTomeAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + InsertExpenseRuleHeader(ExpenseRuleHeader, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.SenegalAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + InsertExpenseRuleHeader(ExpenseRuleHeader, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.SeychellesAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + InsertExpenseRuleHeader(ExpenseRuleHeader, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.SierraLeoneAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + InsertExpenseRuleHeader(ExpenseRuleHeader, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.SintMaartenAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + InsertExpenseRuleHeader(ExpenseRuleHeader, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.SomaliaAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + InsertExpenseRuleHeader(ExpenseRuleHeader, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.SouthGeorgiaAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + InsertExpenseRuleHeader(ExpenseRuleHeader, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.SouthSudanAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + InsertExpenseRuleHeader(ExpenseRuleHeader, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.SriLankaAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + InsertExpenseRuleHeader(ExpenseRuleHeader, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.SudanAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + InsertExpenseRuleHeader(ExpenseRuleHeader, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.SurinameAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + InsertExpenseRuleHeader(ExpenseRuleHeader, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.SvalbardJanMayenAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + InsertExpenseRuleHeader(ExpenseRuleHeader, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.SyriaAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + InsertExpenseRuleHeader(ExpenseRuleHeader, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.TaiwanAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + InsertExpenseRuleHeader(ExpenseRuleHeader, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.TajikistanAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + InsertExpenseRuleHeader(ExpenseRuleHeader, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.TimorLesteAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + InsertExpenseRuleHeader(ExpenseRuleHeader, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.TogoAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + InsertExpenseRuleHeader(ExpenseRuleHeader, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.TokelauAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + InsertExpenseRuleHeader(ExpenseRuleHeader, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.TongaAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + InsertExpenseRuleHeader(ExpenseRuleHeader, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.TrinidadTobagoAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + InsertExpenseRuleHeader(ExpenseRuleHeader, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.TurkmenistanAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + InsertExpenseRuleHeader(ExpenseRuleHeader, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.TurksCalcosAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + InsertExpenseRuleHeader(ExpenseRuleHeader, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.TuvaluAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + InsertExpenseRuleHeader(ExpenseRuleHeader, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.UkraineAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + InsertExpenseRuleHeader(ExpenseRuleHeader, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.USMinorOutlyingAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + InsertExpenseRuleHeader(ExpenseRuleHeader, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.UruguayAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + InsertExpenseRuleHeader(ExpenseRuleHeader, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.UzbekistanAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + InsertExpenseRuleHeader(ExpenseRuleHeader, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.VenezuelAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + InsertExpenseRuleHeader(ExpenseRuleHeader, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.VietnamAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + InsertExpenseRuleHeader(ExpenseRuleHeader, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.VirginIslandsBrAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + InsertExpenseRuleHeader(ExpenseRuleHeader, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.VirginIslandsUSAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + InsertExpenseRuleHeader(ExpenseRuleHeader, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.WallisatunaAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + InsertExpenseRuleHeader(ExpenseRuleHeader, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.WesternSaharaAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + InsertExpenseRuleHeader(ExpenseRuleHeader, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.YemenAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + InsertExpenseRuleHeader(ExpenseRuleHeader, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.ZambiaAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + InsertExpenseRuleHeader(ExpenseRuleHeader, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.ZimbabweAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + InsertExpenseRuleHeader(ExpenseRuleHeader, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.AlandIslandsAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + InsertExpenseRuleHeader(ExpenseRuleHeader, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.CanadaAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + InsertExpenseRuleHeader(ExpenseRuleHeader, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.DenmarkAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + InsertExpenseRuleHeader(ExpenseRuleHeader, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.DenmarkCph(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + InsertExpenseRuleHeader(ExpenseRuleHeader, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.Domestic(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + InsertExpenseRuleHeader(ExpenseRuleHeader, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.FranceAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + InsertExpenseRuleHeader(ExpenseRuleHeader, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.FranceParis(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + InsertExpenseRuleHeader(ExpenseRuleHeader, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.GermanyAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + InsertExpenseRuleHeader(ExpenseRuleHeader, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.UKLondon(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + InsertExpenseRuleHeader(ExpenseRuleHeader, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.UKOther(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + InsertExpenseRuleHeader(ExpenseRuleHeader, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.USAFlorida(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + InsertExpenseRuleHeader(ExpenseRuleHeader, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.USANY(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + InsertExpenseRuleHeader(ExpenseRuleHeader, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.USAOther(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); + end; + + local procedure InsertExpenseRuleHeader(var ExpenseRuleHeader: Record "Expense Rule Header"; ExpenseCategoryCode: Code[20]; ExpenseLocationCode: Code[20]; EffectiveDate: Date; JustificationRequired: Enum "Expense Justification"; RequiredSpecificMerchant: Boolean; SpecificMerchantName: Text[100]; CurrencyCode: Code[10]; UnitOfMeasureCode: Code[10]) + begin + if ExpenseRuleHeader.Get(ExpenseCategoryCode, ExpenseLocationCode, EffectiveDate) then + exit; + ExpenseRuleHeader.Validate("Expense Category Code", ExpenseCategoryCode); + ExpenseRuleHeader.Validate("Expense Location", ExpenseLocationCode); + ExpenseRuleHeader.Validate("Effective Date", EffectiveDate); + ExpenseRuleHeader.Validate("Justification Required", JustificationRequired); + ExpenseRuleHeader.Validate("Required Specific Merchant", RequiredSpecificMerchant); + ExpenseRuleHeader.Validate("Specific Merchant Name", SpecificMerchantName); + ExpenseRuleHeader.Validate("Currency Code", CurrencyCode); + ExpenseRuleHeader.Validate("Unit of Measure Code", UnitOfMeasureCode); + ExpenseRuleHeader.Insert(true); + end; + +} \ No newline at end of file diff --git a/src/Apps/W1/ExpenseAgent/app/src/Setup/Pages/ExpenseAgentSetupWizard.Page.al b/src/Apps/W1/ExpenseAgent/app/src/Setup/Pages/ExpenseAgentSetupWizard.Page.al index 94f04d3c5ae..3d2c4b3061a 100644 --- a/src/Apps/W1/ExpenseAgent/app/src/Setup/Pages/ExpenseAgentSetupWizard.Page.al +++ b/src/Apps/W1/ExpenseAgent/app/src/Setup/Pages/ExpenseAgentSetupWizard.Page.al @@ -1486,7 +1486,7 @@ page 6991 "Expense Agent Setup Wizard" AccessControl.Validate("User Security ID", AadApplication."User ID"); AccessControl.Validate("Role ID", ExpenseAgentPermissionSetLbl); AccessControl.Validate("App ID", AggregatePermissionSet."App ID"); - AccessControl.Validate("Company Name", CompanyName()); + AccessControl.Validate("Company Name", CopyStr(CompanyName(), 1, MaxStrLen(AccessControl."Company Name"))); AccessControl.Insert(true); end; diff --git a/src/Apps/W1/ExpenseAgent/demo data/Demo Data/2.Master Data/CreateExpenseRuleCondition.Codeunit.al b/src/Apps/W1/ExpenseAgent/demo data/Demo Data/2.Master Data/CreateExpenseRuleCondition.Codeunit.al deleted file mode 100644 index 354c29bccee..00000000000 --- a/src/Apps/W1/ExpenseAgent/demo data/Demo Data/2.Master Data/CreateExpenseRuleCondition.Codeunit.al +++ /dev/null @@ -1,279 +0,0 @@ -// ------------------------------------------------------------------------------------------------ -// Copyright (c) Microsoft Corporation. All rights reserved. -// Licensed under the MIT License. See License.txt in the project root for license information. -// ------------------------------------------------------------------------------------------------ -namespace Microsoft.ExpenseAgent; - -codeunit 8213 "Create Expense Rule Condition" -{ - InherentEntitlements = X; - InherentPermissions = X; - - trigger OnRun() - var - CreateExpenseCategories: Codeunit "Create Expense Categories DM"; - CreateExpenseLocation: Codeunit "Create Expense Location"; - ContosoExpenseAgent: Codeunit "Contoso Expense Agent"; - begin - ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.Entertain(), '', 0D, 10000, Enum::"Expense Rule Condition Type"::"At Least Justification Needed", 500); - ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.Entertain(), '', 0D, 20000, Enum::"Expense Rule Condition Type"::"Max Amount", 1000); - ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.Mileage(), '', 0D, 10000, Enum::"Expense Rule Condition Type"::"Max Amount", 300); - ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.UnitedArabEmiratesAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); - ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.AustriaAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); - ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.AustraliaAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); - ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.BelgiumAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); - ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.BulgariaAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); - ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.BruneiDarussalamAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); - ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.BrazilAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); - ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.SwitzerlandAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); - ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.SwitzerlandGeneva(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); - ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.SwitzerlandGeneva(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); - ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.ChinaAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); - ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.CostaRicaAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); - ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.CyprusAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); - ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.CzechiaAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); - ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.AlgeriaAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); - ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.EstoniaAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); - ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.GreeceAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); - ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.SpainAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); - ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.FinlandAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); - ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.FijiIslandsAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); - ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.GreatBritainAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); - ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.CroatiaAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); - ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.HungaryAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); - ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.IndonesiaAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); - ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.IrelandAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); - ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.IndiaAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); - ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.IcelandAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); - ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.ItalyAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); - ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.JapanAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); - ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.JapanTokyo(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); - ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.KenyaAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); - ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.LithuaniaAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); - ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.LuxembourgAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); - ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.LatviaAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); - ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.MoroccoAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); - ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.MontenegroAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); - ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.MaltaAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); - ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.MexicoAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); - ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.MalaysiaAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); - ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.MozambiqueAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); - ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.NigeriaAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); - ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.NorthernIrelandAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); - ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.NetherlandsAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); - ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.NorwayAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); - ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.NorwayOslo(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); - ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.NewZealandAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); - ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.PhilippinesAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); - ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.PolandAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); - ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.PortugalAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); - ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.RomaniaAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); - ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.SerbiaAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); - ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.RussiaAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); - ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.SaudiArabiaAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); - ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.SolomonIslandsAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); - ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.SwedenAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); - ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.SingaporeAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); - ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.SloveniaAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); - ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.SlovakiaAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); - ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.SwazilandAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); - ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.ThailandAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); - ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.TunisiaAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); - ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.TurkiyeAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); - ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.TanzaniaAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); - ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.UgandaAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); - ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.VanuatuAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); - ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.SamoaAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); - ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.SouthAfricaAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); - ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.AfghanistanAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); - ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.AlbaniaAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); - ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.AndorraAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); - ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.AngolaAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); - ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.AnguillaAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); - ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.AntarcticaAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); - ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.AntiguaBarbudaAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); - ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.ArgentinaAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); - ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.ArmeniaAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); - ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.ArubaAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); - ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.AzerbaijanAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); - ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.BahamasAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); - ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.BahrainAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); - ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.BangladeshAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); - ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.BarbadosAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); - ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.BelarusAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); - ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.BelizeAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); - ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.BeninAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); - ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.BermudaAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); - ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.BhutanAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); - ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.BoliviaAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); - ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.BonaireAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); - ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.BosniaHerzegovinaAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); - ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.BotswanaAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); - ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.BouvetIslandAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); - ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.BritishIndianOceanAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); - ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.BurkinaFasoAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); - ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.BurundiAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); - ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.CaboVerdeAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); - ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.CambodiaAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); - ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.CameroonAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); - ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.CaymanIslandsAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); - ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.CentralAfricanAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); - ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.ChadAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); - ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.ChileAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); - ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.ChristmasIslandAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); - ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.CocosIslandsAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); - ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.ColombiaAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); - ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.ComorosAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); - ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.CongoDRAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); - ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.CongoAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); - ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.CookIslandsAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); - ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.CubaAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); - ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.CuracaoAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); - ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.CotedIvoireAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); - ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.DjiboutiAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); - ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.DominicaAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); - ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.DominicanAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); - ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.EcuadorAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); - ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.EgyptAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); - ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.ElSalvadorAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); - ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.EquatorialGuineaAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); - ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.EritreaAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); - ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.EthiopiaAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); - ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.FalklandIslandsAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); - ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.FaroeIslandsAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); - ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.FrenchGuianaAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); - ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.FrenchPolynesiaAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); - ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.FrenchSouthernAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); - ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.GabonAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); - ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.GambiaAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); - ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.GeorgiaAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); - ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.GhanaAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); - ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.GibraltarAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); - ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.GreenlandAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); - ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.GrenadaAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); - ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.GuadeloupeAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); - ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.GuamAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); - ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.GuatemalaAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); - ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.GuernseyAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); - ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.GuineaAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); - ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.GuineaBissauAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); - ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.GuyanaAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); - ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.HaitiAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); - ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.HeardIslandAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); - ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.HolySeeAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); - ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.HondurasAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); - ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.HongKongAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); - ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.IsleManAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); - ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.IsraelAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); - ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.JamaicaAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); - ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.JerseyAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); - ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.JordanAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); - ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.KazakhstanAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); - ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.KiribatiAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); - ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.NorthKoreaAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); - ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.SouthKoreaAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); - ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.KuwaitAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); - ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.KyrgyzstanAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); - ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.LaosAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); - ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.LebanonAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); - ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.LesothoAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); - ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.LiberiaAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); - ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.LibyaAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); - ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.LiechtensteinAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); - ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.MacaoAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); - ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.MadagascarAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); - ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.MalawiAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); - ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.MaldivesAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); - ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.MaliAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); - ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.MarshallIslandsAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); - ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.MartiniqueAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); - ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.MauritaniaAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); - ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.MauritiusAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); - ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.MayotteAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); - ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.MicronesiaAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); - ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.MoldovaAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); - ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.MonacoAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); - ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.MongoliaAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); - ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.MontserratAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); - ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.MyanmarAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); - ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.NamibiaAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); - ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.NauruAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); - ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.NepalAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); - ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.NewCaledoniaAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); - ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.NigerAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); - ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.NiueAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); - ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.NorfolkIslandAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); - ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.NorthMacedoniaAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); - ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.NorthernMarianaAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); - ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.OmanAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); - ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.PakistanAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); - ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.PalauAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); - ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.PalestineAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); - ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.PanamaAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); - ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.PapuaNewGuineaAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); - ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.ParaguayAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); - ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.PeruAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); - ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.PitcairnAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); - ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.PuertoRicoAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); - ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.QatarAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); - ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.RwandaAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); - ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.ReunionAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); - ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.SaintBarthelemyAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); - ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.SaintHelenaAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); - ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.SaintKittsNevisAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); - ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.SaintLuciaAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); - ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.SaintMartinAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); - ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.SaintPierreQuelonAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); - ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.SaintVincentAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); - ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.SanMarinoAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); - ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.SaoTomeAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); - ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.SenegalAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); - ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.SeychellesAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); - ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.SierraLeoneAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); - ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.SintMaartenAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); - ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.SomaliaAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); - ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.SouthGeorgiaAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); - ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.SouthSudanAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); - ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.SriLankaAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); - ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.SudanAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); - ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.SurinameAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); - ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.SvalbardJanMayenAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); - ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.SyriaAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); - ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.TaiwanAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); - ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.TajikistanAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); - ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.TimorLesteAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); - ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.TogoAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); - ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.TokelauAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); - ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.TongaAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); - ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.TrinidadTobagoAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); - ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.TurkmenistanAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); - ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.TurksCalcosAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); - ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.TuvaluAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); - ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.UkraineAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); - ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.USMinorOutlyingAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); - ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.UruguayAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); - ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.UzbekistanAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); - ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.VenezuelAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); - ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.VietnamAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); - ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.VirginIslandsBrAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); - ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.VirginIslandsUSAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); - ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.WallisatunaAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); - ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.WesternSaharaAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); - ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.YemenAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); - ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.ZambiaAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); - ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.ZimbabweAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); - ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.AlandIslandsAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); - ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.CanadaAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); - ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.DenmarkAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); - ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.DenmarkCph(), 0D, 20000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); - ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.Domestic(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); - ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.FranceAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); - ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.FranceParis(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); - ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.GermanyAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); - ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.UKLondon(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); - ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.UKOther(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); - ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.USAFlorida(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); - ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.USANY(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); - ContosoExpenseAgent.InsertExpenseRuleCondition(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.USAOther(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 0); - end; -} \ No newline at end of file diff --git a/src/Apps/W1/ExpenseAgent/demo data/Demo Data/2.Master Data/CreateExpenseRuleHeader.Codeunit.al b/src/Apps/W1/ExpenseAgent/demo data/Demo Data/2.Master Data/CreateExpenseRuleHeader.Codeunit.al deleted file mode 100644 index e90793e9ec0..00000000000 --- a/src/Apps/W1/ExpenseAgent/demo data/Demo Data/2.Master Data/CreateExpenseRuleHeader.Codeunit.al +++ /dev/null @@ -1,281 +0,0 @@ -// ------------------------------------------------------------------------------------------------ -// Copyright (c) Microsoft Corporation. All rights reserved. -// Licensed under the MIT License. See License.txt in the project root for license information. -// ------------------------------------------------------------------------------------------------ -namespace Microsoft.ExpenseAgent; - -codeunit 8212 "Create Expense Rule Header" -{ - InherentEntitlements = X; - InherentPermissions = X; - - trigger OnRun() - var - CreateExpenseCategories: Codeunit "Create Expense Categories DM"; - CreateExpenseLocation: Codeunit "Create Expense Location"; - ContosoExpenseAgent: Codeunit "Contoso Expense Agent"; - begin - ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.Entertain(), '', 0D, Enum::"Expense Justification"::"Against Conditions", false, '', '', ''); - ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.Hotels(), '', 0D, Enum::"Expense Justification"::" ", false, '', '', ''); - ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.Mileage(), '', 0D, Enum::"Expense Justification"::" ", false, '', '', ''); - ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.Morale(), '', 0D, Enum::"Expense Justification"::" ", false, '', '', ''); - - ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.UnitedArabEmiratesAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); - ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.AustriaAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); - ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.AustraliaAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); - ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.BelgiumAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); - ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.BulgariaAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); - ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.BruneiDarussalamAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); - ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.BrazilAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); - ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.SwitzerlandAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); - ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.SwitzerlandGeneva(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); - ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.SwitzerlandZurich(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); - ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.ChinaAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); - ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.CostaRicaAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); - ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.CyprusAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); - ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.CzechiaAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); - ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.AlgeriaAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); - ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.EstoniaAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); - ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.GreeceAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); - ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.SpainAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); - ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.FinlandAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); - ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.FijiIslandsAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); - ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.GreatBritainAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); - ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.CroatiaAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); - ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.HungaryAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); - ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.IndonesiaAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); - ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.IrelandAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); - ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.IndiaAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); - ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.IcelandAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); - ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.ItalyAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); - ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.JapanAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); - ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.JapanTokyo(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); - ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.KenyaAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); - ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.LithuaniaAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); - ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.LuxembourgAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); - ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.LatviaAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); - ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.MoroccoAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); - ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.MontenegroAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); - ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.MaltaAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); - ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.MexicoAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); - ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.MalaysiaAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); - ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.MozambiqueAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); - ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.NigeriaAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); - ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.NorthernIrelandAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); - ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.NetherlandsAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); - ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.NorwayAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); - ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.NorwayOslo(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); - ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.NewZealandAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); - ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.PhilippinesAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); - ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.PolandAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); - ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.PortugalAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); - ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.RomaniaAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); - ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.SerbiaAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); - ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.RussiaAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); - ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.SaudiArabiaAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); - ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.SolomonIslandsAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); - ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.SwedenAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); - ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.SingaporeAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); - ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.SloveniaAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); - ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.SlovakiaAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); - ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.SwazilandAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); - ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.ThailandAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); - ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.TunisiaAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); - ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.TurkiyeAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); - ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.TanzaniaAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); - ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.UgandaAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); - ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.VanuatuAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); - ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.SamoaAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); - ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.SouthAfricaAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); - ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.AfghanistanAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); - ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.AlbaniaAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); - ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.AndorraAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); - ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.AngolaAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); - ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.AnguillaAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); - ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.AntarcticaAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); - ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.AntiguaBarbudaAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); - ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.ArgentinaAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); - ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.ArmeniaAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); - ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.ArubaAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); - ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.AzerbaijanAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); - ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.BahamasAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); - ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.BahrainAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); - ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.BangladeshAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); - ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.BarbadosAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); - ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.BelarusAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); - ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.BelizeAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); - ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.BeninAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); - ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.BermudaAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); - ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.BhutanAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); - ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.BoliviaAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); - ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.BonaireAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); - ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.BosniaHerzegovinaAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); - ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.BotswanaAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); - ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.BouvetIslandAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); - ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.BritishIndianOceanAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); - ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.BurkinaFasoAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); - ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.BurundiAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); - ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.CaboVerdeAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); - ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.CambodiaAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); - ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.CameroonAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); - ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.CaymanIslandsAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); - ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.CentralAfricanAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); - ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.ChadAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); - ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.ChileAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); - ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.ChristmasIslandAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); - ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.CocosIslandsAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); - ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.ColombiaAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); - ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.ComorosAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); - ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.CongoDRAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); - ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.CongoAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); - ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.CookIslandsAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); - ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.CubaAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); - ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.CuracaoAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); - ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.CotedIvoireAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); - ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.DjiboutiAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); - ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.DominicaAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); - ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.DominicanAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); - ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.EcuadorAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); - ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.EgyptAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); - ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.ElSalvadorAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); - ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.EquatorialGuineaAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); - ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.EritreaAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); - ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.EthiopiaAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); - ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.FalklandIslandsAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); - ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.FaroeIslandsAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); - ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.FrenchGuianaAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); - ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.FrenchPolynesiaAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); - ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.FrenchSouthernAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); - ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.GabonAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); - ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.GambiaAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); - ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.GeorgiaAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); - ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.GhanaAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); - ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.GibraltarAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); - ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.GreenlandAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); - ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.GrenadaAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); - ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.GuadeloupeAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); - ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.GuamAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); - ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.GuatemalaAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); - ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.GuernseyAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); - ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.GuineaAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); - ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.GuineaBissauAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); - ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.GuyanaAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); - ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.HaitiAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); - ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.HeardIslandAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); - ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.HolySeeAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); - ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.HondurasAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); - ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.HongKongAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); - ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.IsleManAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); - ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.IsraelAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); - ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.JamaicaAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); - ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.JerseyAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); - ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.JordanAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); - ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.KazakhstanAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); - ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.KiribatiAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); - ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.NorthKoreaAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); - ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.SouthKoreaAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); - ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.KuwaitAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); - ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.KyrgyzstanAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); - ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.LaosAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); - ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.LebanonAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); - ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.LesothoAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); - ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.LiberiaAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); - ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.LibyaAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); - ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.LiechtensteinAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); - ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.MacaoAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); - ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.MadagascarAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); - ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.MalawiAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); - ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.MaldivesAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); - ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.MaliAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); - ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.MarshallIslandsAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); - ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.MartiniqueAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); - ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.MauritaniaAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); - ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.MauritiusAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); - ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.MayotteAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); - ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.MicronesiaAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); - ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.MoldovaAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); - ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.MonacoAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); - ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.MongoliaAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); - ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.MontserratAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); - ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.MyanmarAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); - ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.NamibiaAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); - ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.NauruAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); - ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.NepalAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); - ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.NewCaledoniaAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); - ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.NigerAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); - ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.NiueAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); - ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.NorfolkIslandAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); - ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.NorthMacedoniaAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); - ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.NorthernMarianaAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); - ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.OmanAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); - ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.PakistanAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); - ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.PalauAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); - ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.PalestineAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); - ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.PanamaAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); - ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.PapuaNewGuineaAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); - ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.ParaguayAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); - ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.PeruAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); - ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.PitcairnAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); - ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.PuertoRicoAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); - ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.QatarAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); - ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.RwandaAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); - ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.ReunionAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); - ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.SaintBarthelemyAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); - ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.SaintHelenaAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); - ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.SaintKittsNevisAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); - ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.SaintLuciaAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); - ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.SaintMartinAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); - ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.SaintPierreQuelonAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); - ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.SaintVincentAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); - ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.SanMarinoAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); - ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.SaoTomeAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); - ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.SenegalAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); - ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.SeychellesAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); - ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.SierraLeoneAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); - ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.SintMaartenAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); - ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.SomaliaAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); - ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.SouthGeorgiaAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); - ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.SouthSudanAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); - ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.SriLankaAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); - ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.SudanAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); - ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.SurinameAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); - ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.SvalbardJanMayenAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); - ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.SyriaAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); - ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.TaiwanAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); - ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.TajikistanAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); - ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.TimorLesteAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); - ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.TogoAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); - ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.TokelauAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); - ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.TongaAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); - ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.TrinidadTobagoAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); - ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.TurkmenistanAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); - ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.TurksCalcosAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); - ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.TuvaluAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); - ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.UkraineAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); - ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.USMinorOutlyingAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); - ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.UruguayAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); - ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.UzbekistanAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); - ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.VenezuelAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); - ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.VietnamAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); - ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.VirginIslandsBrAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); - ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.VirginIslandsUSAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); - ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.WallisatunaAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); - ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.WesternSaharaAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); - ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.YemenAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); - ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.ZambiaAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); - ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.ZimbabweAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); - ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.AlandIslandsAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); - ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.CanadaAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); - ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.DenmarkAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); - ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.DenmarkCph(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); - ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.Domestic(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); - ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.FranceAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); - ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.FranceParis(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); - ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.GermanyAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); - ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.UKLondon(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); - ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.UKOther(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); - ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.USAFlorida(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); - ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.USANY(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); - ContosoExpenseAgent.InsertExpenseRuleHeader(CreateExpenseCategories.PerDiem(), CreateExpenseLocation.USAOther(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); - end; -} \ No newline at end of file diff --git a/src/Apps/W1/ExpenseAgent/demo data/Demo Tool/Contoso Helpers/ContosoExpenseAgent.Codeunit.al b/src/Apps/W1/ExpenseAgent/demo data/Demo Tool/Contoso Helpers/ContosoExpenseAgent.Codeunit.al index f1324b15afe..d01f93101f2 100644 --- a/src/Apps/W1/ExpenseAgent/demo data/Demo Tool/Contoso Helpers/ContosoExpenseAgent.Codeunit.al +++ b/src/Apps/W1/ExpenseAgent/demo data/Demo Tool/Contoso Helpers/ContosoExpenseAgent.Codeunit.al @@ -278,7 +278,7 @@ codeunit 8205 "Contoso Expense Agent" ExpenseUser.Insert(true); end; - internal procedure InsertExpense(ExpenseUserNo: Code[20]; ExpenseCategoryCode: Code[20]; ExpenseLocationCode: Code[30]; Description: Text[100]; Justification: Text[250]; ExpenseDate: Date; CurrencyCode: Code[10]; Amount: Decimal; MerchantName: Text[100]; PaymentMethodCode: Code[20]; Refundable: Boolean; Billable: Boolean; BillableToCustomer: Code[20]; StartingDateTime: DateTime; EndingDateTime: DateTime; NonRefundableAmount: Decimal; Mileage: Decimal; StartingPoint: Text[100]; EndingPoint: Text[100]; ExpenseExtDocNo: Text[30]; JobNo: Code[20]; JobTaskNo: Code[20]): Record Expense + internal procedure InsertExpense(ExpenseUserNo: Code[20]; ExpenseCategoryCode: Code[20]; ExpenseLocationCode: Code[30]; Description: Text[100]; Justification: Text[100]; ExpenseDate: Date; CurrencyCode: Code[10]; Amount: Decimal; MerchantName: Text[100]; PaymentMethodCode: Code[10]; Refundable: Boolean; Billable: Boolean; BillableToCustomer: Code[20]; StartingDateTime: DateTime; EndingDateTime: DateTime; NonRefundableAmount: Decimal; Mileage: Decimal; StartingPoint: Text[50]; EndingPoint: Text[50]; ExpenseExtDocNo: Text[30]; JobNo: Code[20]; JobTaskNo: Code[20]): Record Expense var Expense: Record Expense; begin From 02dc41b43be3d80e29bd15ef7889b3f3330c0e7e Mon Sep 17 00:00:00 2001 From: Bardur Knudsen Date: Fri, 14 Aug 2026 09:57:32 +0200 Subject: [PATCH 03/28] fix warning --- .../Demo Tool/Contoso Helpers/ContosoExpenseAgent.Codeunit.al | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/Apps/W1/ExpenseAgent/demo data/Demo Tool/Contoso Helpers/ContosoExpenseAgent.Codeunit.al b/src/Apps/W1/ExpenseAgent/demo data/Demo Tool/Contoso Helpers/ContosoExpenseAgent.Codeunit.al index d01f93101f2..5d6c80f15a5 100644 --- a/src/Apps/W1/ExpenseAgent/demo data/Demo Tool/Contoso Helpers/ContosoExpenseAgent.Codeunit.al +++ b/src/Apps/W1/ExpenseAgent/demo data/Demo Tool/Contoso Helpers/ContosoExpenseAgent.Codeunit.al @@ -278,7 +278,7 @@ codeunit 8205 "Contoso Expense Agent" ExpenseUser.Insert(true); end; - internal procedure InsertExpense(ExpenseUserNo: Code[20]; ExpenseCategoryCode: Code[20]; ExpenseLocationCode: Code[30]; Description: Text[100]; Justification: Text[100]; ExpenseDate: Date; CurrencyCode: Code[10]; Amount: Decimal; MerchantName: Text[100]; PaymentMethodCode: Code[10]; Refundable: Boolean; Billable: Boolean; BillableToCustomer: Code[20]; StartingDateTime: DateTime; EndingDateTime: DateTime; NonRefundableAmount: Decimal; Mileage: Decimal; StartingPoint: Text[50]; EndingPoint: Text[50]; ExpenseExtDocNo: Text[30]; JobNo: Code[20]; JobTaskNo: Code[20]): Record Expense + internal procedure InsertExpense(ExpenseUserNo: Code[20]; ExpenseCategoryCode: Code[20]; ExpenseLocationCode: Code[20]; Description: Text[100]; Justification: Text[100]; ExpenseDate: Date; CurrencyCode: Code[10]; Amount: Decimal; MerchantName: Text[100]; PaymentMethodCode: Code[10]; Refundable: Boolean; Billable: Boolean; BillableToCustomer: Code[20]; StartingDateTime: DateTime; EndingDateTime: DateTime; NonRefundableAmount: Decimal; Mileage: Decimal; StartingPoint: Text[50]; EndingPoint: Text[50]; ExpenseExtDocNo: Text[30]; JobNo: Code[20]; JobTaskNo: Code[20]): Record Expense var Expense: Record Expense; begin From 692f528ae02f5305fb79c18d7610b82e57d8c42c Mon Sep 17 00:00:00 2001 From: Bardur Knudsen Date: Fri, 14 Aug 2026 15:01:30 +0200 Subject: [PATCH 04/28] AT localization --- .../src/ExpenseEventSubscriberAT.Codeunit.al | 36 ++++++++----- .../CreateExpenseCategories.Codeunit.al | 53 +------------------ .../CreateExpenseRuleCondition.Codeunit.al | 25 +++++---- .../CreateExpenseRuleHeader.Codeunit.al | 11 ++-- 4 files changed, 48 insertions(+), 77 deletions(-) diff --git a/src/Apps/AT/ExpenseAgent_AT/app/src/ExpenseEventSubscriberAT.Codeunit.al b/src/Apps/AT/ExpenseAgent_AT/app/src/ExpenseEventSubscriberAT.Codeunit.al index 8a960dc318d..8053b8e4ccc 100644 --- a/src/Apps/AT/ExpenseAgent_AT/app/src/ExpenseEventSubscriberAT.Codeunit.al +++ b/src/Apps/AT/ExpenseAgent_AT/app/src/ExpenseEventSubscriberAT.Codeunit.al @@ -82,14 +82,16 @@ codeunit 6914 "Expense Event Subscriber AT" [EventSubscriber(ObjectType::Codeunit, Codeunit::"Create Expense Categories", 'OnAfterBuildRuleConditionSeeds', '', false, false)] local procedure OnAfterBuildRuleConditionSeeds(var TempRuleCondition: Record "Expense Rule Condition" temporary) + var + CreateExpenseRuleCondition: codeunit "Create Expense Rule Condition"; begin - CreateExpenseCategories.AddRuleConditionSeed(TempRuleCondition, PerDiemI(), CreateExpenseCategories.GetCANADAALLTxt(), "Expense Rule Condition Type"::"Daily Rate", 125); - CreateExpenseCategories.AddRuleConditionSeed(TempRuleCondition, PerDiemI(), CreateExpenseCategories.GetDENMARKALLTxt(), "Expense Rule Condition Type"::"Daily Rate", 450); - CreateExpenseCategories.AddRuleConditionSeed(TempRuleCondition, PerDiemA(), CreateExpenseCategories.GetDOMESTICTxt(), "Expense Rule Condition Type"::"Daily Rate", 50); - CreateExpenseCategories.AddRuleConditionSeed(TempRuleCondition, PerDiemI(), CreateExpenseCategories.GetFRANCEALLTxt(), "Expense Rule Condition Type"::"Daily Rate", 110); - CreateExpenseCategories.AddRuleConditionSeed(TempRuleCondition, PerDiemI(), CreateExpenseCategories.GetGERMANYALLTxt(), "Expense Rule Condition Type"::"Daily Rate", 105); - CreateExpenseCategories.AddRuleConditionSeed(TempRuleCondition, PerDiemI(), CreateExpenseCategories.GetUKOTHERTxt(), "Expense Rule Condition Type"::"Daily Rate", 115); - CreateExpenseCategories.AddRuleConditionSeed(TempRuleCondition, PerDiemI(), CreateExpenseCategories.GetUSAOTHERTxt(), "Expense Rule Condition Type"::"Daily Rate", 120); + CreateExpenseRuleCondition.InsertExpenseRuleCondition(TempRuleCondition, PerDiemI(), CreateExpenseCategories.GetCANADAALLTxt(), 0D, 10000, "Expense Rule Condition Type"::"Daily Rate", 125); + CreateExpenseRuleCondition.InsertExpenseRuleCondition(TempRuleCondition, PerDiemI(), CreateExpenseCategories.GetDENMARKALLTxt(), 0D, 10000, "Expense Rule Condition Type"::"Daily Rate", 450); + CreateExpenseRuleCondition.InsertExpenseRuleCondition(TempRuleCondition, PerDiemA(), CreateExpenseCategories.GetDOMESTICTxt(), 0D, 10000, "Expense Rule Condition Type"::"Daily Rate", 50); + CreateExpenseRuleCondition.InsertExpenseRuleCondition(TempRuleCondition, PerDiemI(), CreateExpenseCategories.GetFRANCEALLTxt(), 0D, 10000, "Expense Rule Condition Type"::"Daily Rate", 110); + CreateExpenseRuleCondition.InsertExpenseRuleCondition(TempRuleCondition, PerDiemI(), CreateExpenseCategories.GetGERMANYALLTxt(), 0D, 10000, "Expense Rule Condition Type"::"Daily Rate", 105); + CreateExpenseRuleCondition.InsertExpenseRuleCondition(TempRuleCondition, PerDiemI(), CreateExpenseCategories.GetUKOTHERTxt(), 0D, 10000, "Expense Rule Condition Type"::"Daily Rate", 115); + CreateExpenseRuleCondition.InsertExpenseRuleCondition(TempRuleCondition, PerDiemI(), CreateExpenseCategories.GetUSAOTHERTxt(), 0D, 10000, "Expense Rule Condition Type"::"Daily Rate", 120); end; [EventSubscriber(ObjectType::Codeunit, Codeunit::"Create Expense Categories", 'OnBeforeAddCategorySeed', '', false, false)] @@ -107,17 +109,25 @@ codeunit 6914 "Expense Event Subscriber AT" end; [EventSubscriber(ObjectType::Codeunit, Codeunit::"Create Expense Categories", 'OnBeforeAddRuleSeed', '', false, false)] - local procedure OnBeforeAddRuleSeed(CategoryCode: Code[20]; var IsHandled: Boolean) + local procedure OnBeforeAddRuleSeed(var ExpenseRuleHeader: Record "Expense Rule Header"; var CategoryCode: Code[20]; var ExpenseLocationCode: Code[20]; var CurrencyCode: Code[10]; var JustificationRequired: Enum "Expense Justification"; var IsHandled: Boolean) begin - if CategoryCode = CreateExpenseCategories.GetPERDIEMTxt() then - IsHandled := true; + if CategoryCode <> CreateExpenseCategories.GetPERDIEMTxt() then + exit; + if ExpenseLocationCode = CreateExpenseCategories.GetDOMESTICTxt() then + CategoryCode := PerDiemA() + else + CategoryCode := PerDiemI(); end; [EventSubscriber(ObjectType::Codeunit, Codeunit::"Create Expense Categories", 'OnBeforeAddRuleConditionSeed', '', false, false)] - local procedure OnBeforeAddRuleConditionSeed(CategoryCode: Code[20]; var IsHandled: Boolean) + local procedure OnBeforeAddRuleConditionSeed(var RuleCondition: Record "Expense Rule Condition"; var CategoryCode: Code[20]; var ExpenseLocationCode: Code[20]; var ConditionType: Enum "Expense Rule Condition Type"; var Value: Decimal; var IsHandled: Boolean) begin - if CategoryCode = CreateExpenseCategories.GetPERDIEMTxt() then - IsHandled := true; + if CategoryCode <> CreateExpenseCategories.GetPERDIEMTxt() then + exit; + if ExpenseLocationCode = CreateExpenseCategories.GetDOMESTICTxt() then + CategoryCode := PerDiemA() + else + CategoryCode := PerDiemI(); end; [EventSubscriber(ObjectType::Codeunit, Codeunit::"Create Expense Categories", 'OnBeforeInsertPostingGroupSeed', '', false, false)] diff --git a/src/Apps/W1/ExpenseAgent/app/src/Setup/Codeunits/CreateExpenseCategories.Codeunit.al b/src/Apps/W1/ExpenseAgent/app/src/Setup/Codeunits/CreateExpenseCategories.Codeunit.al index 252dae3c09c..93fc2683f7c 100644 --- a/src/Apps/W1/ExpenseAgent/app/src/Setup/Codeunits/CreateExpenseCategories.Codeunit.al +++ b/src/Apps/W1/ExpenseAgent/app/src/Setup/Codeunits/CreateExpenseCategories.Codeunit.al @@ -907,50 +907,6 @@ codeunit 6973 "Create Expense Categories" until TempConditionSeed.Next() = 0; end; - internal procedure AddRuleSeed(var TempRuleHeader: Record "Expense Rule Header" temporary; CategoryCode: Code[20]; ExpenseLocationCode: Code[20]; CurrencyCode: Code[10]; JustificationRequired: Enum "Expense Justification") - var - IsHandled: Boolean; - begin - OnBeforeAddRuleSeed(TempRuleHeader, CategoryCode, ExpenseLocationCode, CurrencyCode, JustificationRequired, IsHandled); - if IsHandled then - exit; - - TempRuleHeader.Init(); - TempRuleHeader."Expense Category Code" := CategoryCode; - TempRuleHeader."Expense Location" := ExpenseLocationCode; - TempRuleHeader."Currency Code" := CurrencyCode; - TempRuleHeader."Justification Required" := JustificationRequired; - OnBeforeInsertRuleSeed(TempRuleHeader); - TempRuleHeader.Insert(); - end; - - internal procedure AddRuleConditionSeed(var TempRuleCondition: Record "Expense Rule Condition" temporary; CategoryCode: Code[20]; ExpenseLocationCode: Code[20]; ConditionType: Enum "Expense Rule Condition Type"; Value: Decimal) - var - NextLineNo: Integer; - IsHandled: Boolean; - begin - OnBeforeAddRuleConditionSeed(TempRuleCondition, CategoryCode, ExpenseLocationCode, ConditionType, Value, IsHandled); - if IsHandled then - exit; - - TempRuleCondition.Reset(); - TempRuleCondition.SetRange("Expense Category Code", CategoryCode); - TempRuleCondition.SetRange("Expense Location", ExpenseLocationCode); - if TempRuleCondition.FindLast() then - NextLineNo := TempRuleCondition."Line No." + 1 - else - NextLineNo := 1; - TempRuleCondition.Reset(); - - TempRuleCondition.Init(); - TempRuleCondition."Expense Category Code" := CategoryCode; - TempRuleCondition."Expense Location" := ExpenseLocationCode; - TempRuleCondition."Line No." := NextLineNo; - TempRuleCondition."Condition Type" := ConditionType; - TempRuleCondition.Value := Value; - TempRuleCondition.Insert(); - end; - local procedure InsertDefaultExpenseGroups() begin InsertExpenseGroup(XTRAVELTxt, XTravelExpensesDescTxt); @@ -1408,11 +1364,6 @@ codeunit 6973 "Create Expense Categories" begin end; - [IntegrationEvent(false, false)] - local procedure OnBeforeInsertRuleSeed(var TempRuleHeader: Record "Expense Rule Header" temporary) - begin - end; - [IntegrationEvent(false, false)] local procedure OnBeforeAddCategorySeed(Code: Code[20]; Description: Text[250]; PostingDescription: Text[100]; ExpenseGroupCode: Code[20]; PostingGroupCode: Code[20]; PaymentMethod: Code[10]; IsRefundable: Boolean; IsPrepayment: Boolean; AttachmentEnforcement: Enum "Expense Attachment Enforcement"; DetailRequired: Enum "Expense Detail Needed"; var IsHandled: Boolean) begin @@ -1424,12 +1375,12 @@ codeunit 6973 "Create Expense Categories" end; [IntegrationEvent(false, false)] - local procedure OnBeforeAddRuleSeed(var TempRuleHeader: Record "Expense Rule Header" temporary; CategoryCode: Code[20]; ExpenseLocationCode: Code[20]; CurrencyCode: Code[10]; JustificationRequired: Enum "Expense Justification"; var IsHandled: Boolean) + internal procedure OnBeforeAddRuleSeed(var ExpenseRuleHeader: Record "Expense Rule Header"; var CategoryCode: Code[20]; var ExpenseLocationCode: Code[20]; var CurrencyCode: Code[10]; var JustificationRequired: Enum "Expense Justification"; var IsHandled: Boolean) begin end; [IntegrationEvent(false, false)] - local procedure OnBeforeAddRuleConditionSeed(var TempRuleCondition: Record "Expense Rule Condition" temporary; CategoryCode: Code[20]; ExpenseLocationCode: Code[20]; ConditionType: Enum "Expense Rule Condition Type"; Value: Decimal; var IsHandled: Boolean) + internal procedure OnBeforeAddRuleConditionSeed(var RuleCondition: Record "Expense Rule Condition"; var CategoryCode: Code[20]; var ExpenseLocationCode: Code[20]; var ConditionType: Enum "Expense Rule Condition Type"; var Value: Decimal; var IsHandled: Boolean) begin end; } \ No newline at end of file diff --git a/src/Apps/W1/ExpenseAgent/app/src/Setup/Codeunits/CreateExpenseRuleCondition.Codeunit.al b/src/Apps/W1/ExpenseAgent/app/src/Setup/Codeunits/CreateExpenseRuleCondition.Codeunit.al index d692db574c6..d9bfaf11738 100644 --- a/src/Apps/W1/ExpenseAgent/app/src/Setup/Codeunits/CreateExpenseRuleCondition.Codeunit.al +++ b/src/Apps/W1/ExpenseAgent/app/src/Setup/Codeunits/CreateExpenseRuleCondition.Codeunit.al @@ -16,9 +16,6 @@ codeunit 7105 "Create Expense Rule Condition" end; internal procedure CreateExpenseRuleConditions(var ExpenseRulecondition: Record "Expense Rule Condition") - var - CreateExpenseCategories: Codeunit "Create Expense Categories"; - CreateExpenseLocation: Codeunit "Create Expense Location"; begin InsertExpenseRuleCondition(ExpenseRuleCondition, CreateExpenseCategories.GetENTERTAINTxt(), '', 0D, 10000, Enum::"Expense Rule Condition Type"::"At Least Justification Needed", 500); InsertExpenseRuleCondition(ExpenseRuleCondition, CreateExpenseCategories.GetENTERTAINTxt(), '', 0D, 20000, Enum::"Expense Rule Condition Type"::"Max Amount", 1000); @@ -282,17 +279,25 @@ codeunit 7105 "Create Expense Rule Condition" InsertExpenseRuleCondition(ExpenseRuleCondition, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.USAOther(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 100); end; - local procedure InsertExpenseRuleCondition(var ExpenseRuleCondition: Record "Expense Rule Condition"; ExpenseCategoryCode: Code[20]; ExpenseLocationCode: Code[20]; EffectiveDate: Date; LineNo: Integer; ConditionType: Enum "Expense Rule Condition Type"; Value: Decimal) + internal procedure InsertExpenseRuleCondition(var ExpenseRuleCondition: Record "Expense Rule Condition"; ExpenseCategoryCode: Code[20]; ExpenseLocationCode: Code[20]; EffectiveDate: Date; LineNo: Integer; ConditionType: Enum "Expense Rule Condition Type"; Value: Decimal) + var + IsHandled: Boolean; begin + CreateExpenseCategories.OnBeforeAddRuleConditionSeed(ExpenseRuleCondition, ExpenseCategoryCode, ExpenseLocationCode, ConditionType, Value, IsHandled); + if IsHandled then + exit; if ExpenseRuleCondition.Get(ExpenseCategoryCode, ExpenseLocationCode, EffectiveDate, LineNo) then exit; - ExpenseRuleCondition.Validate("Expense Category Code", ExpenseCategoryCode); - ExpenseRuleCondition.Validate("Expense Location", ExpenseLocationCode); - ExpenseRuleCondition.Validate("Effective Date", EffectiveDate); - ExpenseRuleCondition.Validate("Line No.", LineNo); - ExpenseRuleCondition.Validate("Condition Type", ConditionType); - ExpenseRuleCondition.Validate(Value, Value); + ExpenseRuleCondition."Expense Category Code" := ExpenseCategoryCode; + ExpenseRuleCondition."Expense Location" := ExpenseLocationCode; + ExpenseRuleCondition."Effective Date" := EffectiveDate; + ExpenseRuleCondition."Line No." := LineNo; + ExpenseRuleCondition."Condition Type" := ConditionType; + ExpenseRuleCondition.Value := Value; ExpenseRuleCondition.Insert(true); end; + var + CreateExpenseCategories: Codeunit "Create Expense Categories"; + CreateExpenseLocation: Codeunit "Create Expense Location"; } \ No newline at end of file diff --git a/src/Apps/W1/ExpenseAgent/app/src/Setup/Codeunits/CreateExpenseRuleHeader.Codeunit.al b/src/Apps/W1/ExpenseAgent/app/src/Setup/Codeunits/CreateExpenseRuleHeader.Codeunit.al index 2bffae6e213..e294a09937c 100644 --- a/src/Apps/W1/ExpenseAgent/app/src/Setup/Codeunits/CreateExpenseRuleHeader.Codeunit.al +++ b/src/Apps/W1/ExpenseAgent/app/src/Setup/Codeunits/CreateExpenseRuleHeader.Codeunit.al @@ -16,9 +16,6 @@ codeunit 7107 "Create Expense Rule Header" end; internal procedure InsertExpenseRuleHeaders(var ExpenseRuleHeader: Record "Expense Rule Header") - var - CreateExpenseCategories: Codeunit "Create Expense Categories"; - CreateExpenseLocation: Codeunit "Create Expense Location"; begin InsertExpenseRuleHeader(ExpenseRuleHeader, CreateExpenseCategories.GetENTERTAINTxt(), '', 0D, Enum::"Expense Justification"::"Against Conditions", false, '', '', ''); InsertExpenseRuleHeader(ExpenseRuleHeader, CreateExpenseCategories.GetHOTELSTxt(), '', 0D, Enum::"Expense Justification"::" ", false, '', '', ''); @@ -284,7 +281,12 @@ codeunit 7107 "Create Expense Rule Header" end; local procedure InsertExpenseRuleHeader(var ExpenseRuleHeader: Record "Expense Rule Header"; ExpenseCategoryCode: Code[20]; ExpenseLocationCode: Code[20]; EffectiveDate: Date; JustificationRequired: Enum "Expense Justification"; RequiredSpecificMerchant: Boolean; SpecificMerchantName: Text[100]; CurrencyCode: Code[10]; UnitOfMeasureCode: Code[10]) + var + IsHandled: Boolean; begin + CreateExpenseCategories.OnBeforeAddRuleSeed(ExpenseRuleHeader, ExpenseCategoryCode, ExpenseLocationCode, CurrencyCode, JustificationRequired, IsHandled); + if IsHandled then + exit; if ExpenseRuleHeader.Get(ExpenseCategoryCode, ExpenseLocationCode, EffectiveDate) then exit; ExpenseRuleHeader.Validate("Expense Category Code", ExpenseCategoryCode); @@ -298,4 +300,7 @@ codeunit 7107 "Create Expense Rule Header" ExpenseRuleHeader.Insert(true); end; + var + CreateExpenseCategories: Codeunit "Create Expense Categories"; + CreateExpenseLocation: Codeunit "Create Expense Location"; } \ No newline at end of file From c60f61e179dae8d84d0d52af2308f4b3ebd6e72d Mon Sep 17 00:00:00 2001 From: Bardur Knudsen Date: Fri, 14 Aug 2026 15:10:19 +0200 Subject: [PATCH 05/28] AT localization --- .../app/src/Setup/Codeunits/CreateExpenseLocation.Codeunit.al | 1 + .../src/Setup/Codeunits/CreateExpenseRuleCondition.Codeunit.al | 1 + .../app/src/Setup/Codeunits/CreateExpenseRuleHeader.Codeunit.al | 1 + 3 files changed, 3 insertions(+) diff --git a/src/Apps/W1/ExpenseAgent/app/src/Setup/Codeunits/CreateExpenseLocation.Codeunit.al b/src/Apps/W1/ExpenseAgent/app/src/Setup/Codeunits/CreateExpenseLocation.Codeunit.al index a58a31a1bb5..23f132c0c8a 100644 --- a/src/Apps/W1/ExpenseAgent/app/src/Setup/Codeunits/CreateExpenseLocation.Codeunit.al +++ b/src/Apps/W1/ExpenseAgent/app/src/Setup/Codeunits/CreateExpenseLocation.Codeunit.al @@ -6,6 +6,7 @@ namespace Microsoft.ExpenseAgent; codeunit 7104 "Create Expense Location" { + Access = Internal; InherentEntitlements = X; InherentPermissions = X; TableNo = "Expense Location"; diff --git a/src/Apps/W1/ExpenseAgent/app/src/Setup/Codeunits/CreateExpenseRuleCondition.Codeunit.al b/src/Apps/W1/ExpenseAgent/app/src/Setup/Codeunits/CreateExpenseRuleCondition.Codeunit.al index d9bfaf11738..7f7f6af45b9 100644 --- a/src/Apps/W1/ExpenseAgent/app/src/Setup/Codeunits/CreateExpenseRuleCondition.Codeunit.al +++ b/src/Apps/W1/ExpenseAgent/app/src/Setup/Codeunits/CreateExpenseRuleCondition.Codeunit.al @@ -6,6 +6,7 @@ namespace Microsoft.ExpenseAgent; codeunit 7105 "Create Expense Rule Condition" { + Access = Internal; InherentEntitlements = X; InherentPermissions = X; TableNo = "Expense Rule Condition"; diff --git a/src/Apps/W1/ExpenseAgent/app/src/Setup/Codeunits/CreateExpenseRuleHeader.Codeunit.al b/src/Apps/W1/ExpenseAgent/app/src/Setup/Codeunits/CreateExpenseRuleHeader.Codeunit.al index e294a09937c..19e901e93ea 100644 --- a/src/Apps/W1/ExpenseAgent/app/src/Setup/Codeunits/CreateExpenseRuleHeader.Codeunit.al +++ b/src/Apps/W1/ExpenseAgent/app/src/Setup/Codeunits/CreateExpenseRuleHeader.Codeunit.al @@ -6,6 +6,7 @@ namespace Microsoft.ExpenseAgent; codeunit 7107 "Create Expense Rule Header" { + Access = Internal; InherentEntitlements = X; InherentPermissions = X; TableNo = "Expense Rule Header"; From 629cd0df05283318076be78600542df0c3ecf7d0 Mon Sep 17 00:00:00 2001 From: "copilot-swe-agent[bot]" <198982749+Copilot@users.noreply.github.com> Date: Sun, 16 Aug 2026 18:23:34 +0000 Subject: [PATCH 06/28] Fix AA0139 overflow warning: LocationCode param type mismatch in LibraryExpense Co-authored-by: BardurKnudsen <8470791+BardurKnudsen@users.noreply.github.com> --- src/Apps/W1/ExpenseAgent/test/src/LibraryExpense.Codeunit.al | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/Apps/W1/ExpenseAgent/test/src/LibraryExpense.Codeunit.al b/src/Apps/W1/ExpenseAgent/test/src/LibraryExpense.Codeunit.al index 51be9afd94e..b33e8c6e0a8 100644 --- a/src/Apps/W1/ExpenseAgent/test/src/LibraryExpense.Codeunit.al +++ b/src/Apps/W1/ExpenseAgent/test/src/LibraryExpense.Codeunit.al @@ -154,7 +154,7 @@ codeunit 148300 "Library - Expense" ExpenseLocation.Insert(true); end; - internal procedure CreateExpenseWithZeroVATPostingSetup(var Expense: Record Expense; ExpenseUserNo: Code[20]; ExpenseCategory: Code[20]; ExpenseSubCategory: Code[20]; LocationCode: Code[30]; Refundable: Boolean; CurrencyCode: Code[10]; Amount: Decimal) + internal procedure CreateExpenseWithZeroVATPostingSetup(var Expense: Record Expense; ExpenseUserNo: Code[20]; ExpenseCategory: Code[20]; ExpenseSubCategory: Code[20]; LocationCode: Code[20]; Refundable: Boolean; CurrencyCode: Code[10]; Amount: Decimal) var VATPostingSetup: Record "VAT Posting Setup"; begin @@ -166,7 +166,7 @@ codeunit 148300 "Library - Expense" Expense.Modify(); end; - internal procedure CreateExpense(var Expense: Record Expense; ExpenseUserNo: Code[20]; ExpenseCategory: Code[20]; ExpenseSubCategory: Code[20]; LocationCode: Code[30]; Refundable: Boolean; CurrencyCode: Code[10]; Amount: Decimal) + internal procedure CreateExpense(var Expense: Record Expense; ExpenseUserNo: Code[20]; ExpenseCategory: Code[20]; ExpenseSubCategory: Code[20]; LocationCode: Code[20]; Refundable: Boolean; CurrencyCode: Code[10]; Amount: Decimal) begin Expense.Init(); Expense.Validate(Description, LibraryUtility.GenerateRandomCode(Expense.FieldNo(Description), Database::"Expense")); From c63a539c4d8c3ce261feed7837bc1fc56266439e Mon Sep 17 00:00:00 2001 From: Bardur Knudsen Date: Mon, 17 Aug 2026 09:00:39 +0200 Subject: [PATCH 07/28] Added permissions --- .../src/Permissions/ExpenseManagementObjects.permissionset.al | 3 +++ 1 file changed, 3 insertions(+) diff --git a/src/Apps/W1/ExpenseAgent/app/src/Permissions/ExpenseManagementObjects.permissionset.al b/src/Apps/W1/ExpenseAgent/app/src/Permissions/ExpenseManagementObjects.permissionset.al index a2ae0cc2c94..a3b349167b4 100644 --- a/src/Apps/W1/ExpenseAgent/app/src/Permissions/ExpenseManagementObjects.permissionset.al +++ b/src/Apps/W1/ExpenseAgent/app/src/Permissions/ExpenseManagementObjects.permissionset.al @@ -187,6 +187,9 @@ permissionset 6904 "Expense Management - Objects" codeunit "Expense Preview Post Instance" = X, codeunit "Expense Approval Helper" = X, codeunit "Create Expense Agent Setup" = X, + codeunit "Create Expense Location" = X, + codeunit "Create Expense Rule Condition" = X, + codeunit "Create Expense Rule Header" = X, codeunit "Create Expense Categories" = X, codeunit "Create Expense VAT Rates" = X, codeunit "Create Expense GL Account" = X, From e31acfdf8eb6678a815f0952f59ae1d452b8fcd4 Mon Sep 17 00:00:00 2001 From: Bardur Knudsen Date: Mon, 17 Aug 2026 14:11:14 +0200 Subject: [PATCH 08/28] Fixed inconsistencies --- .../Tables/ExpenseRuleCondition.Table.al | 2 - .../Tables/ExpenseRuleHeader.Table.al | 1 + .../CreateExpenseCategories.Codeunit.al | 40 ++++++------------- .../CreateExpenseLocation.Codeunit.al | 12 +----- .../CreateExpenseRuleCondition.Codeunit.al | 1 - .../CreateExpenseRuleHeader.Codeunit.al | 19 +++++---- .../src/Setup/Pages/ExpenseAgentSetup.Page.al | 22 ++++++++++ 7 files changed, 46 insertions(+), 51 deletions(-) diff --git a/src/Apps/W1/ExpenseAgent/app/src/MasterData/Tables/ExpenseRuleCondition.Table.al b/src/Apps/W1/ExpenseAgent/app/src/MasterData/Tables/ExpenseRuleCondition.Table.al index e313fa3de40..4fab6a53172 100644 --- a/src/Apps/W1/ExpenseAgent/app/src/MasterData/Tables/ExpenseRuleCondition.Table.al +++ b/src/Apps/W1/ExpenseAgent/app/src/MasterData/Tables/ExpenseRuleCondition.Table.al @@ -8,8 +8,6 @@ table 6926 "Expense Rule Condition" { Access = Internal; Caption = 'Expense Rule Condition'; - LookupPageId = "Expense Management Rules"; - DrillDownPageId = "Expense Management Rules"; DataClassification = CustomerContent; ReplicateData = false; diff --git a/src/Apps/W1/ExpenseAgent/app/src/MasterData/Tables/ExpenseRuleHeader.Table.al b/src/Apps/W1/ExpenseAgent/app/src/MasterData/Tables/ExpenseRuleHeader.Table.al index 58d7ffdb8b3..c4907aba3c3 100644 --- a/src/Apps/W1/ExpenseAgent/app/src/MasterData/Tables/ExpenseRuleHeader.Table.al +++ b/src/Apps/W1/ExpenseAgent/app/src/MasterData/Tables/ExpenseRuleHeader.Table.al @@ -12,6 +12,7 @@ table 6927 "Expense Rule Header" Access = Internal; Caption = 'Expense Rule Header'; DataClassification = CustomerContent; + LookupPageId = "Expense Management Rules"; ReplicateData = false; fields diff --git a/src/Apps/W1/ExpenseAgent/app/src/Setup/Codeunits/CreateExpenseCategories.Codeunit.al b/src/Apps/W1/ExpenseAgent/app/src/Setup/Codeunits/CreateExpenseCategories.Codeunit.al index 93fc2683f7c..ff637f5ca3a 100644 --- a/src/Apps/W1/ExpenseAgent/app/src/Setup/Codeunits/CreateExpenseCategories.Codeunit.al +++ b/src/Apps/W1/ExpenseAgent/app/src/Setup/Codeunits/CreateExpenseCategories.Codeunit.al @@ -672,8 +672,10 @@ codeunit 6973 "Create Expense Categories" BuildLocationSeeds(TempLocationSeed); if TempLocationSeed.FindSet() then repeat - if not SeedLocationShouldBeSkipped(TempLocationSeed) then - InsertExpenseLocation(TempLocationSeed."No.", TempLocationSeed."Country/Region Code", TempLocationSeed.Description); + if not SeedLocationShouldBeSkipped(TempLocationSeed) then begin + ExpenseLocation := TempLocationSeed; + ExpenseLocation.Insert(); + end; until TempLocationSeed.Next() = 0; end; @@ -682,7 +684,7 @@ codeunit 6973 "Create Expense Categories" ConflictingLocation: Record "Expense Location"; begin if ConflictingLocation.Get(SeedLocation."No.") then - exit(false); + exit(true); ConflictingLocation.Reset(); ConflictingLocation.SetFilter("No.", '<>%1', SeedLocation."No."); @@ -767,39 +769,33 @@ codeunit 6973 "Create Expense Categories" TempRuleHeaderSeed: Record "Expense Rule Header" temporary; TempRuleConditionSeed: Record "Expense Rule Condition" temporary; TempPreExistingRuleHeader: Record "Expense Rule Header" temporary; - TempSkippedSeedLocation: Record "Expense Location" temporary; ExistingRuleHeader: Record "Expense Rule Header"; begin // Expense Locations are a prerequisite for rules that target a location. InsertDefaultExpenseLocations(); - BuildSkippedSeedLocations(TempSkippedSeedLocation); - BuildRuleSeeds(TempRuleHeaderSeed); // Snapshot which seed-coded rule headers already exist in the DB. Their conditions // are considered customer-owned and must not be touched by the defaults run. if TempRuleHeaderSeed.FindSet() then repeat - if not TempSkippedSeedLocation.Get(TempRuleHeaderSeed."Expense Location") then - if ExistingRuleHeader.Get(TempRuleHeaderSeed."Expense Category Code", TempRuleHeaderSeed."Expense Location", TempRuleHeaderSeed."Effective Date") then begin - TempPreExistingRuleHeader := ExistingRuleHeader; - TempPreExistingRuleHeader.Insert(); - end; + if ExistingRuleHeader.Get(TempRuleHeaderSeed."Expense Category Code", TempRuleHeaderSeed."Expense Location", TempRuleHeaderSeed."Effective Date") then begin + TempPreExistingRuleHeader := ExistingRuleHeader; + TempPreExistingRuleHeader.Insert(); + end; until TempRuleHeaderSeed.Next() = 0; if TempRuleHeaderSeed.FindSet() then repeat - if not TempSkippedSeedLocation.Get(TempRuleHeaderSeed."Expense Location") then - InsertExpenseRule(TempRuleHeaderSeed."Expense Category Code", TempRuleHeaderSeed."Expense Location", TempRuleHeaderSeed."Currency Code", TempRuleHeaderSeed."Justification Required"); + InsertExpenseRule(TempRuleHeaderSeed."Expense Category Code", TempRuleHeaderSeed."Expense Location", TempRuleHeaderSeed."Currency Code", TempRuleHeaderSeed."Justification Required"); until TempRuleHeaderSeed.Next() = 0; BuildRuleConditionSeeds(TempRuleConditionSeed); if TempRuleConditionSeed.FindSet() then repeat - if not TempSkippedSeedLocation.Get(TempRuleConditionSeed."Expense Location") then - if not TempPreExistingRuleHeader.Get(TempRuleConditionSeed."Expense Category Code", TempRuleConditionSeed."Expense Location", TempRuleConditionSeed."Effective Date") then - InsertExpenseRuleCondition(TempRuleConditionSeed."Expense Category Code", TempRuleConditionSeed."Expense Location", TempRuleConditionSeed."Condition Type", TempRuleConditionSeed.Value); + if not TempPreExistingRuleHeader.Get(TempRuleConditionSeed."Expense Category Code", TempRuleConditionSeed."Expense Location", TempRuleConditionSeed."Effective Date") then + InsertExpenseRuleCondition(TempRuleConditionSeed."Expense Category Code", TempRuleConditionSeed."Expense Location", TempRuleConditionSeed."Condition Type", TempRuleConditionSeed.Value); until TempRuleConditionSeed.Next() = 0; end; @@ -1273,18 +1269,6 @@ codeunit 6973 "Create Expense Categories" ExpensePostingGroup.Insert(true); end; - local procedure InsertExpenseLocation(Code: Code[20]; CountryRegionCode: Code[10]; Description: Text[100]) - begin - if ExpenseLocation.Get(Code) then - exit; - - ExpenseLocation.Init(); - ExpenseLocation.Validate("No.", Code); - ExpenseLocation.Validate("Country/Region Code", CountryRegionCode); - ExpenseLocation.Validate("Description", Description); - ExpenseLocation.Insert(true); - end; - local procedure InsertExpenseRule(CategoryCode: Code[20]; ExpenseLocationCode: Code[20]; CurrencyCode: Code[10]; JustificationRequired: Enum "Expense Justification") begin if ExpenseRuleHeader.Get(CategoryCode, ExpenseLocationCode, 0D) then diff --git a/src/Apps/W1/ExpenseAgent/app/src/Setup/Codeunits/CreateExpenseLocation.Codeunit.al b/src/Apps/W1/ExpenseAgent/app/src/Setup/Codeunits/CreateExpenseLocation.Codeunit.al index 23f132c0c8a..d9f56c4fa6d 100644 --- a/src/Apps/W1/ExpenseAgent/app/src/Setup/Codeunits/CreateExpenseLocation.Codeunit.al +++ b/src/Apps/W1/ExpenseAgent/app/src/Setup/Codeunits/CreateExpenseLocation.Codeunit.al @@ -26,7 +26,6 @@ codeunit 7104 "Create Expense Location" InsertExpenseLocation(ExpenseLocation, FranceParis(), FranceParisLbl, 'FR', ParisLbl, ''); InsertExpenseLocation(ExpenseLocation, GermanyAll(), GermanyLbl, 'DE', '', ''); InsertExpenseLocation(ExpenseLocation, UKLondon(), UKLondonAreaLbl, 'GB', LondonLbl, ''); - InsertExpenseLocation(ExpenseLocation, UKOther(), UKOtherLbl, 'GB', '', ''); InsertExpenseLocation(ExpenseLocation, USAFlorida(), USAFloridaLbl, 'US', '', FLLbl); InsertExpenseLocation(ExpenseLocation, USANY(), USANYLbl, 'US', NewYorkLbl, ''); InsertExpenseLocation(ExpenseLocation, USAOther(), USAOtherLbl, 'US', '', ''); @@ -291,7 +290,6 @@ codeunit 7104 "Create Expense Location" FranceParisTok: Label 'FRANCE-PARIS', MaxLength = 20, Locked = true; GermanyAllTok: Label 'GERMANY-ALL', MaxLength = 20, Locked = true; UKLondonTok: Label 'UK-LONDON', MaxLength = 20, Locked = true; - UKOtherTok: Label 'UK-OTHER', MaxLength = 20, Locked = true; USAFloridaTok: Label 'USA-FLORIDA', MaxLength = 20, Locked = true; USANYTok: Label 'USA-NY', MaxLength = 20, Locked = true; USAOtherTok: Label 'USA-OTHER', MaxLength = 20, Locked = true; @@ -303,7 +301,6 @@ codeunit 7104 "Create Expense Location" GermanyLbl: Label 'Germany', MaxLength = 100; UKLondonAreaLbl: Label 'United Kingdom - London area', MaxLength = 100; LondonLbl: Label 'London', MaxLength = 30; - UKOtherLbl: Label 'United Kingdom - other', MaxLength = 100; USAFloridaLbl: Label 'United States - Florida', MaxLength = 100; USANYLbl: Label 'United States - New York', MaxLength = 100; USAOtherLbl: Label 'United States - Other', MaxLength = 100; @@ -803,7 +800,7 @@ codeunit 7104 "Create Expense Location" AlandIslandsAllLocationLbl: Label 'Aland Islands - all location', MaxLength = 100; - local procedure InsertExpenseLocation(var ExpenseLocation: Record "Expense Location"; Code: Code[20]; Description: Text[100]; CountryRegionCode: Code[10]; City: Text[30]; County: Text[30]) + internal procedure InsertExpenseLocation(var ExpenseLocation: Record "Expense Location"; Code: Code[20]; Description: Text[100]; CountryRegionCode: Code[10]; City: Text[30]; County: Text[30]) begin if ExpenseLocation.Get(Code) then exit; @@ -812,7 +809,7 @@ codeunit 7104 "Create Expense Location" ExpenseLocation.Validate("Country/Region Code", CountryRegionCode); ExpenseLocation.Validate("City", City); ExpenseLocation.Validate("County", County); - ExpenseLocation.Insert(true); + ExpenseLocation.Insert(); end; procedure UnitedArabEmiratesAll(): Code[20] @@ -2080,11 +2077,6 @@ codeunit 7104 "Create Expense Location" exit(UKLondonTok); end; - procedure UKOther(): Code[20] - begin - exit(UKOtherTok); - end; - procedure USAFlorida(): Code[20] begin exit(USAFloridaTok); diff --git a/src/Apps/W1/ExpenseAgent/app/src/Setup/Codeunits/CreateExpenseRuleCondition.Codeunit.al b/src/Apps/W1/ExpenseAgent/app/src/Setup/Codeunits/CreateExpenseRuleCondition.Codeunit.al index 7f7f6af45b9..a81b0c35c7b 100644 --- a/src/Apps/W1/ExpenseAgent/app/src/Setup/Codeunits/CreateExpenseRuleCondition.Codeunit.al +++ b/src/Apps/W1/ExpenseAgent/app/src/Setup/Codeunits/CreateExpenseRuleCondition.Codeunit.al @@ -274,7 +274,6 @@ codeunit 7105 "Create Expense Rule Condition" InsertExpenseRuleCondition(ExpenseRuleCondition, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.FranceParis(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 100); InsertExpenseRuleCondition(ExpenseRuleCondition, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.GermanyAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 100); InsertExpenseRuleCondition(ExpenseRuleCondition, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.UKLondon(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 100); - InsertExpenseRuleCondition(ExpenseRuleCondition, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.UKOther(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 100); InsertExpenseRuleCondition(ExpenseRuleCondition, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.USAFlorida(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 100); InsertExpenseRuleCondition(ExpenseRuleCondition, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.USANY(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 100); InsertExpenseRuleCondition(ExpenseRuleCondition, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.USAOther(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 100); diff --git a/src/Apps/W1/ExpenseAgent/app/src/Setup/Codeunits/CreateExpenseRuleHeader.Codeunit.al b/src/Apps/W1/ExpenseAgent/app/src/Setup/Codeunits/CreateExpenseRuleHeader.Codeunit.al index 19e901e93ea..d632d4e8701 100644 --- a/src/Apps/W1/ExpenseAgent/app/src/Setup/Codeunits/CreateExpenseRuleHeader.Codeunit.al +++ b/src/Apps/W1/ExpenseAgent/app/src/Setup/Codeunits/CreateExpenseRuleHeader.Codeunit.al @@ -275,7 +275,6 @@ codeunit 7107 "Create Expense Rule Header" InsertExpenseRuleHeader(ExpenseRuleHeader, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.FranceParis(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); InsertExpenseRuleHeader(ExpenseRuleHeader, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.GermanyAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); InsertExpenseRuleHeader(ExpenseRuleHeader, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.UKLondon(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); - InsertExpenseRuleHeader(ExpenseRuleHeader, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.UKOther(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); InsertExpenseRuleHeader(ExpenseRuleHeader, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.USAFlorida(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); InsertExpenseRuleHeader(ExpenseRuleHeader, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.USANY(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); InsertExpenseRuleHeader(ExpenseRuleHeader, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.USAOther(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); @@ -290,15 +289,15 @@ codeunit 7107 "Create Expense Rule Header" exit; if ExpenseRuleHeader.Get(ExpenseCategoryCode, ExpenseLocationCode, EffectiveDate) then exit; - ExpenseRuleHeader.Validate("Expense Category Code", ExpenseCategoryCode); - ExpenseRuleHeader.Validate("Expense Location", ExpenseLocationCode); - ExpenseRuleHeader.Validate("Effective Date", EffectiveDate); - ExpenseRuleHeader.Validate("Justification Required", JustificationRequired); - ExpenseRuleHeader.Validate("Required Specific Merchant", RequiredSpecificMerchant); - ExpenseRuleHeader.Validate("Specific Merchant Name", SpecificMerchantName); - ExpenseRuleHeader.Validate("Currency Code", CurrencyCode); - ExpenseRuleHeader.Validate("Unit of Measure Code", UnitOfMeasureCode); - ExpenseRuleHeader.Insert(true); + ExpenseRuleHeader."Expense Category Code" := ExpenseCategoryCode; + ExpenseRuleHeader."Expense Location" := ExpenseLocationCode; + ExpenseRuleHeader."Effective Date" := EffectiveDate; + ExpenseRuleHeader."Justification Required" := JustificationRequired; + ExpenseRuleHeader."Required Specific Merchant" := RequiredSpecificMerchant; + ExpenseRuleHeader."Specific Merchant Name" := SpecificMerchantName; + ExpenseRuleHeader."Currency Code" := CurrencyCode; + ExpenseRuleHeader."Unit of Measure Code" := UnitOfMeasureCode; + ExpenseRuleHeader.Insert(); end; var diff --git a/src/Apps/W1/ExpenseAgent/app/src/Setup/Pages/ExpenseAgentSetup.Page.al b/src/Apps/W1/ExpenseAgent/app/src/Setup/Pages/ExpenseAgentSetup.Page.al index 996f8a6b320..c63c7e10ee0 100644 --- a/src/Apps/W1/ExpenseAgent/app/src/Setup/Pages/ExpenseAgentSetup.Page.al +++ b/src/Apps/W1/ExpenseAgent/app/src/Setup/Pages/ExpenseAgentSetup.Page.al @@ -357,6 +357,22 @@ page 6996 "Expense Agent Setup" RunObject = Page "Expense Users"; ToolTip = 'Opens the page to set up expense users.'; } + action("Expense Locations") + { + ApplicationArea = Basic, Suite; + Caption = 'Expense Locations'; + Image = CountryRegion; + RunObject = Page "Expense Locations"; + ToolTip = 'Opens the page to set up expense locations.'; + } + action("Expense Management Rules") + { + ApplicationArea = Basic, Suite; + Caption = 'Expense Management Rules'; + Image = Administration; + RunObject = Page "Expense Management Rules"; + ToolTip = 'Opens the page to set up expense management rules.'; + } action("Expense Posting Groups") { ApplicationArea = Basic, Suite; @@ -405,6 +421,12 @@ page 6996 "Expense Agent Setup" actionref("Expense Categories_Promoted"; "Expense Categories") { } + actionref("Expense_Locations_Promoted"; "Expense Locations") + { + } + actionref("Expense_Management_Rules_Promoted"; "Expense Management Rules") + { + } actionref("Expense Posting Groups_Promoted"; "Expense Posting Groups") { } From 828d565f421afe01e440030a250d3d4bcc87fe6e Mon Sep 17 00:00:00 2001 From: Bardur Knudsen Date: Thu, 20 Aug 2026 09:15:26 +0200 Subject: [PATCH 09/28] pull --- .../AgentUserPermissions/ExpenseAgentObjects.PermissionSet.al | 1 - 1 file changed, 1 deletion(-) diff --git a/src/Apps/W1/ExpenseAgent/app/src/Permissions/AgentUserPermissions/ExpenseAgentObjects.PermissionSet.al b/src/Apps/W1/ExpenseAgent/app/src/Permissions/AgentUserPermissions/ExpenseAgentObjects.PermissionSet.al index 5a30646135e..6f4b6313a5e 100644 --- a/src/Apps/W1/ExpenseAgent/app/src/Permissions/AgentUserPermissions/ExpenseAgentObjects.PermissionSet.al +++ b/src/Apps/W1/ExpenseAgent/app/src/Permissions/AgentUserPermissions/ExpenseAgentObjects.PermissionSet.al @@ -125,7 +125,6 @@ permissionset 6952 "Expense Agent - Objects" codeunit "Expense Auto Population" = X, codeunit "Expense Capabilities Provider" = X, codeunit "Expense Activity Log Mgt." = X, - codeunit "Expense Projects Builder" = X, codeunit "Expense Consumption Handler" = X, codeunit "Expense Currency" = X, codeunit "Expense Doc No Visibility" = X, From b6b2c76d6d110e550070bfb5ba9d15d85c7c890b Mon Sep 17 00:00:00 2001 From: Bardur Knudsen Date: Thu, 20 Aug 2026 09:22:38 +0200 Subject: [PATCH 10/28] re-introduce procedures used in local versions --- .../CreateExpenseCategories.Codeunit.al | 49 +++++++++++++++++++ 1 file changed, 49 insertions(+) diff --git a/src/Apps/W1/ExpenseAgent/app/src/Setup/Codeunits/CreateExpenseCategories.Codeunit.al b/src/Apps/W1/ExpenseAgent/app/src/Setup/Codeunits/CreateExpenseCategories.Codeunit.al index ff637f5ca3a..c4ca3195905 100644 --- a/src/Apps/W1/ExpenseAgent/app/src/Setup/Codeunits/CreateExpenseCategories.Codeunit.al +++ b/src/Apps/W1/ExpenseAgent/app/src/Setup/Codeunits/CreateExpenseCategories.Codeunit.al @@ -903,6 +903,50 @@ codeunit 6973 "Create Expense Categories" until TempConditionSeed.Next() = 0; end; + internal procedure AddRuleSeed(var TempRuleHeader: Record "Expense Rule Header" temporary; CategoryCode: Code[20]; ExpenseLocationCode: Code[20]; CurrencyCode: Code[10]; JustificationRequired: Enum "Expense Justification") + var + IsHandled: Boolean; + begin + OnBeforeAddRuleSeed(TempRuleHeader, CategoryCode, ExpenseLocationCode, CurrencyCode, JustificationRequired, IsHandled); + if IsHandled then + exit; + + TempRuleHeader.Init(); + TempRuleHeader."Expense Category Code" := CategoryCode; + TempRuleHeader."Expense Location" := ExpenseLocationCode; + TempRuleHeader."Currency Code" := CurrencyCode; + TempRuleHeader."Justification Required" := JustificationRequired; + OnBeforeInsertRuleSeed(TempRuleHeader); + if TempRuleHeader.Insert() then; // may be called as duplicate from an extension + end; + + internal procedure AddRuleConditionSeed(var TempRuleCondition: Record "Expense Rule Condition" temporary; CategoryCode: Code[20]; ExpenseLocationCode: Code[20]; ConditionType: Enum "Expense Rule Condition Type"; Value: Decimal) + var + NextLineNo: Integer; + IsHandled: Boolean; + begin + OnBeforeAddRuleConditionSeed(TempRuleCondition, CategoryCode, ExpenseLocationCode, ConditionType, Value, IsHandled); + if IsHandled then + exit; + + TempRuleCondition.Reset(); + TempRuleCondition.SetRange("Expense Category Code", CategoryCode); + TempRuleCondition.SetRange("Expense Location", ExpenseLocationCode); + if TempRuleCondition.FindLast() then + NextLineNo := TempRuleCondition."Line No." + 1 + else + NextLineNo := 1; + TempRuleCondition.Reset(); + + TempRuleCondition.Init(); + TempRuleCondition."Expense Category Code" := CategoryCode; + TempRuleCondition."Expense Location" := ExpenseLocationCode; + TempRuleCondition."Line No." := NextLineNo; + TempRuleCondition."Condition Type" := ConditionType; + TempRuleCondition.Value := Value; + if TempRuleCondition.Insert() then; // may be called as duplicate from an extension + end; + local procedure InsertDefaultExpenseGroups() begin InsertExpenseGroup(XTRAVELTxt, XTravelExpensesDescTxt); @@ -1348,6 +1392,11 @@ codeunit 6973 "Create Expense Categories" begin end; + [IntegrationEvent(false, false)] + local procedure OnBeforeInsertRuleSeed(var TempRuleHeader: Record "Expense Rule Header" temporary) + begin + end; + [IntegrationEvent(false, false)] local procedure OnBeforeAddCategorySeed(Code: Code[20]; Description: Text[250]; PostingDescription: Text[100]; ExpenseGroupCode: Code[20]; PostingGroupCode: Code[20]; PaymentMethod: Code[10]; IsRefundable: Boolean; IsPrepayment: Boolean; AttachmentEnforcement: Enum "Expense Attachment Enforcement"; DetailRequired: Enum "Expense Detail Needed"; var IsHandled: Boolean) begin From f0bf691bb6daa80a6e158d5216bfc97cdafe942b Mon Sep 17 00:00:00 2001 From: Bardur Knudsen Date: Thu, 20 Aug 2026 16:59:37 +0200 Subject: [PATCH 11/28] Revert field length to the wrong 30 chars --- .../W1/ExpenseAgent/app/src/Expense/Tables/Expense.Table.al | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/Apps/W1/ExpenseAgent/app/src/Expense/Tables/Expense.Table.al b/src/Apps/W1/ExpenseAgent/app/src/Expense/Tables/Expense.Table.al index 8c15ea61d5b..0661c3eb9dd 100644 --- a/src/Apps/W1/ExpenseAgent/app/src/Expense/Tables/Expense.Table.al +++ b/src/Apps/W1/ExpenseAgent/app/src/Expense/Tables/Expense.Table.al @@ -334,7 +334,7 @@ table 6900 Expense CreateDimFromDefaultDim(Rec.FieldNo("Billable to Customer")); end; } - field(23; "Expense Location"; Code[20]) + field(23; "Expense Location"; Code[30]) { Caption = 'Expense Location'; TableRelation = "Expense Location"; From b781af8b3d805f3522cebcb2da3d5687fe948708 Mon Sep 17 00:00:00 2001 From: Bardur Knudsen Date: Fri, 21 Aug 2026 13:05:36 +0200 Subject: [PATCH 12/28] Removed GreatBritain as a dupe of UK --- .../app/src/Expense/Tables/Expense.Table.al | 2 +- .../Codeunits/CreateExpenseReport.Codeunit.al | 2 +- .../Codeunits/CreateExpenseLocation.Codeunit.al | 16 ++++++++-------- .../CreateExpenseRuleCondition.Codeunit.al | 1 - .../CreateExpenseRuleHeader.Codeunit.al | 1 - 5 files changed, 10 insertions(+), 12 deletions(-) diff --git a/src/Apps/W1/ExpenseAgent/app/src/Expense/Tables/Expense.Table.al b/src/Apps/W1/ExpenseAgent/app/src/Expense/Tables/Expense.Table.al index 0661c3eb9dd..5f7599593a5 100644 --- a/src/Apps/W1/ExpenseAgent/app/src/Expense/Tables/Expense.Table.al +++ b/src/Apps/W1/ExpenseAgent/app/src/Expense/Tables/Expense.Table.al @@ -334,7 +334,7 @@ table 6900 Expense CreateDimFromDefaultDim(Rec.FieldNo("Billable to Customer")); end; } - field(23; "Expense Location"; Code[30]) + field(23; "Expense Location"; Code[30]) // NB: Expense Location Code has length 20. { Caption = 'Expense Location'; TableRelation = "Expense Location"; diff --git a/src/Apps/W1/ExpenseAgent/app/src/ExpenseReport/Codeunits/CreateExpenseReport.Codeunit.al b/src/Apps/W1/ExpenseAgent/app/src/ExpenseReport/Codeunits/CreateExpenseReport.Codeunit.al index 32f7a184923..564cfc50a41 100644 --- a/src/Apps/W1/ExpenseAgent/app/src/ExpenseReport/Codeunits/CreateExpenseReport.Codeunit.al +++ b/src/Apps/W1/ExpenseAgent/app/src/ExpenseReport/Codeunits/CreateExpenseReport.Codeunit.al @@ -177,7 +177,7 @@ codeunit 6983 "Create Expense Report" ExpenseReportLine.Validate("Expense User No.", Expense."Expense User No."); ExpenseReportLine.Validate("Expense Category", Expense."Expense Category"); ExpenseReportLine.Validate("Expense Subcategory Code", Expense."Expense Subcategory"); - ExpenseReportLine.Validate("Expense Location", Expense."Expense Location"); + ExpenseReportLine.Validate("Expense Location", CopyStr(Expense."Expense Location", 1, MaxStrLen(ExpenseReportLine."Expense Location"))); if Expense.Description <> '' then ExpenseReportLine.Validate(Description, Expense.Description); if ExpenseReportLine."Expense Subcategory Code" <> '' then diff --git a/src/Apps/W1/ExpenseAgent/app/src/Setup/Codeunits/CreateExpenseLocation.Codeunit.al b/src/Apps/W1/ExpenseAgent/app/src/Setup/Codeunits/CreateExpenseLocation.Codeunit.al index d9f56c4fa6d..9226614233a 100644 --- a/src/Apps/W1/ExpenseAgent/app/src/Setup/Codeunits/CreateExpenseLocation.Codeunit.al +++ b/src/Apps/W1/ExpenseAgent/app/src/Setup/Codeunits/CreateExpenseLocation.Codeunit.al @@ -26,6 +26,7 @@ codeunit 7104 "Create Expense Location" InsertExpenseLocation(ExpenseLocation, FranceParis(), FranceParisLbl, 'FR', ParisLbl, ''); InsertExpenseLocation(ExpenseLocation, GermanyAll(), GermanyLbl, 'DE', '', ''); InsertExpenseLocation(ExpenseLocation, UKLondon(), UKLondonAreaLbl, 'GB', LondonLbl, ''); + InsertExpenseLocation(ExpenseLocation, UKOther(), UKOtherLbl, 'GB', '', ''); InsertExpenseLocation(ExpenseLocation, USAFlorida(), USAFloridaLbl, 'US', '', FLLbl); InsertExpenseLocation(ExpenseLocation, USANY(), USANYLbl, 'US', NewYorkLbl, ''); InsertExpenseLocation(ExpenseLocation, USAOther(), USAOtherLbl, 'US', '', ''); @@ -49,7 +50,6 @@ codeunit 7104 "Create Expense Location" InsertExpenseLocation(ExpenseLocation, SpainAll(), SpainAllLocationLbl, 'ES', '', ''); InsertExpenseLocation(ExpenseLocation, FinlandAll(), FinlandAllLocationLbl, 'FI', '', ''); InsertExpenseLocation(ExpenseLocation, FijiIslandsAll(), FijiIslandsAllLocationLbl, 'FJ', '', ''); - InsertExpenseLocation(ExpenseLocation, GreatBritainAll(), GreatBritainAllLocationLbl, 'GB', '', ''); InsertExpenseLocation(ExpenseLocation, CroatiaAll(), CroatiaAllLocationLbl, 'HR', '', ''); InsertExpenseLocation(ExpenseLocation, HungaryAll(), HungaryAllLocationLbl, 'HU', '', ''); InsertExpenseLocation(ExpenseLocation, IndonesiaAll(), IndonesiaAllLocationLbl, 'ID', '', ''); @@ -290,6 +290,8 @@ codeunit 7104 "Create Expense Location" FranceParisTok: Label 'FRANCE-PARIS', MaxLength = 20, Locked = true; GermanyAllTok: Label 'GERMANY-ALL', MaxLength = 20, Locked = true; UKLondonTok: Label 'UK-LONDON', MaxLength = 20, Locked = true; + UKOtherTok: Label 'UK-OTHER', MaxLength = 20, Locked = true; + UKOtherLbl: Label 'United Kingdom - other', MaxLength = 100; USAFloridaTok: Label 'USA-FLORIDA', MaxLength = 20, Locked = true; USANYTok: Label 'USA-NY', MaxLength = 20, Locked = true; USAOtherTok: Label 'USA-OTHER', MaxLength = 20, Locked = true; @@ -346,8 +348,6 @@ codeunit 7104 "Create Expense Location" FinlandAllLocationLbl: Label 'Finland - all location', MaxLength = 100; FijiIslandsAllTok: Label 'FIJIISLANDS-ALL', MaxLength = 20, Locked = true; FijiIslandsAllLocationLbl: Label 'Fiji Islands - all location', MaxLength = 100; - GreatBritainAllTok: Label 'GREATBRITAIN-ALL', MaxLength = 20, Locked = true; - GreatBritainAllLocationLbl: Label 'Great Britain - all location', MaxLength = 100; CroatiaAllTok: Label 'CROATIA-ALL', MaxLength = 20, Locked = true; CroatiaAllLocationLbl: Label 'Croatia - all location', MaxLength = 100; HungaryAllTok: Label 'HUNGARY-ALL', MaxLength = 20, Locked = true; @@ -912,11 +912,6 @@ codeunit 7104 "Create Expense Location" exit(FijiIslandsAllTok); end; - procedure GreatBritainAll(): Code[20] - begin - exit(GreatBritainAllTok); - end; - procedure CroatiaAll(): Code[20] begin exit(CroatiaAllTok); @@ -2077,6 +2072,11 @@ codeunit 7104 "Create Expense Location" exit(UKLondonTok); end; + procedure UKOther(): Code[20] + begin + exit(UKOtherTok); + end; + procedure USAFlorida(): Code[20] begin exit(USAFloridaTok); diff --git a/src/Apps/W1/ExpenseAgent/app/src/Setup/Codeunits/CreateExpenseRuleCondition.Codeunit.al b/src/Apps/W1/ExpenseAgent/app/src/Setup/Codeunits/CreateExpenseRuleCondition.Codeunit.al index a81b0c35c7b..0dfbbf8e341 100644 --- a/src/Apps/W1/ExpenseAgent/app/src/Setup/Codeunits/CreateExpenseRuleCondition.Codeunit.al +++ b/src/Apps/W1/ExpenseAgent/app/src/Setup/Codeunits/CreateExpenseRuleCondition.Codeunit.al @@ -41,7 +41,6 @@ codeunit 7105 "Create Expense Rule Condition" InsertExpenseRuleCondition(ExpenseRuleCondition, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.SpainAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 100); InsertExpenseRuleCondition(ExpenseRuleCondition, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.FinlandAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 100); InsertExpenseRuleCondition(ExpenseRuleCondition, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.FijiIslandsAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 100); - InsertExpenseRuleCondition(ExpenseRuleCondition, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.GreatBritainAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 100); InsertExpenseRuleCondition(ExpenseRuleCondition, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.CroatiaAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 100); InsertExpenseRuleCondition(ExpenseRuleCondition, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.HungaryAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 100); InsertExpenseRuleCondition(ExpenseRuleCondition, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.IndonesiaAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 100); diff --git a/src/Apps/W1/ExpenseAgent/app/src/Setup/Codeunits/CreateExpenseRuleHeader.Codeunit.al b/src/Apps/W1/ExpenseAgent/app/src/Setup/Codeunits/CreateExpenseRuleHeader.Codeunit.al index d632d4e8701..2e33d65460f 100644 --- a/src/Apps/W1/ExpenseAgent/app/src/Setup/Codeunits/CreateExpenseRuleHeader.Codeunit.al +++ b/src/Apps/W1/ExpenseAgent/app/src/Setup/Codeunits/CreateExpenseRuleHeader.Codeunit.al @@ -42,7 +42,6 @@ codeunit 7107 "Create Expense Rule Header" InsertExpenseRuleHeader(ExpenseRuleHeader, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.SpainAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); InsertExpenseRuleHeader(ExpenseRuleHeader, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.FinlandAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); InsertExpenseRuleHeader(ExpenseRuleHeader, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.FijiIslandsAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); - InsertExpenseRuleHeader(ExpenseRuleHeader, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.GreatBritainAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); InsertExpenseRuleHeader(ExpenseRuleHeader, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.CroatiaAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); InsertExpenseRuleHeader(ExpenseRuleHeader, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.HungaryAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); InsertExpenseRuleHeader(ExpenseRuleHeader, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.IndonesiaAll(), 0D, Enum::"Expense Justification"::" ", false, '', '', ''); From 1e237befca111fe7bf471f0e9e0c357e64fb6352 Mon Sep 17 00:00:00 2001 From: Bardur Knudsen Date: Sun, 23 Aug 2026 22:08:46 +0200 Subject: [PATCH 13/28] ID collision --- src/Apps/W1/ExpenseAgent/app/app.json | 2 +- .../app/src/Setup/Codeunits/CreateExpenseRuleHeader.Codeunit.al | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/src/Apps/W1/ExpenseAgent/app/app.json b/src/Apps/W1/ExpenseAgent/app/app.json index 9c6ca825655..446db6643ab 100644 --- a/src/Apps/W1/ExpenseAgent/app/app.json +++ b/src/Apps/W1/ExpenseAgent/app/app.json @@ -143,7 +143,7 @@ }, { "from": 7107, - "to": 7127 + "to": 7128 } ], "features": [ diff --git a/src/Apps/W1/ExpenseAgent/app/src/Setup/Codeunits/CreateExpenseRuleHeader.Codeunit.al b/src/Apps/W1/ExpenseAgent/app/src/Setup/Codeunits/CreateExpenseRuleHeader.Codeunit.al index 2e33d65460f..9d33a84a38b 100644 --- a/src/Apps/W1/ExpenseAgent/app/src/Setup/Codeunits/CreateExpenseRuleHeader.Codeunit.al +++ b/src/Apps/W1/ExpenseAgent/app/src/Setup/Codeunits/CreateExpenseRuleHeader.Codeunit.al @@ -4,7 +4,7 @@ // ------------------------------------------------------------------------------------------------ namespace Microsoft.ExpenseAgent; -codeunit 7107 "Create Expense Rule Header" +codeunit 7128 "Create Expense Rule Header" { Access = Internal; InherentEntitlements = X; From 422611d086c106b53203143d9ea021ab4637a121 Mon Sep 17 00:00:00 2001 From: Bardur Knudsen Date: Mon, 24 Aug 2026 09:31:36 +0200 Subject: [PATCH 14/28] Object range error --- src/Apps/W1/ExpenseAgent/app/app.json | 4 ---- 1 file changed, 4 deletions(-) diff --git a/src/Apps/W1/ExpenseAgent/app/app.json b/src/Apps/W1/ExpenseAgent/app/app.json index 446db6643ab..fd0a27b9b42 100644 --- a/src/Apps/W1/ExpenseAgent/app/app.json +++ b/src/Apps/W1/ExpenseAgent/app/app.json @@ -139,10 +139,6 @@ }, { "from": 7073, - "to": 7105 - }, - { - "from": 7107, "to": 7128 } ], From 37d7967efdeea53deec87671858c94eed12cc51d Mon Sep 17 00:00:00 2001 From: Bardur Knudsen Date: Mon, 24 Aug 2026 12:12:12 +0200 Subject: [PATCH 15/28] Permissions --- .../AgentUserPermissions/ExpenseAgentObjects.PermissionSet.al | 1 - 1 file changed, 1 deletion(-) diff --git a/src/Apps/W1/ExpenseAgent/app/src/Permissions/AgentUserPermissions/ExpenseAgentObjects.PermissionSet.al b/src/Apps/W1/ExpenseAgent/app/src/Permissions/AgentUserPermissions/ExpenseAgentObjects.PermissionSet.al index d8edc82f26d..886b37cd9b5 100644 --- a/src/Apps/W1/ExpenseAgent/app/src/Permissions/AgentUserPermissions/ExpenseAgentObjects.PermissionSet.al +++ b/src/Apps/W1/ExpenseAgent/app/src/Permissions/AgentUserPermissions/ExpenseAgentObjects.PermissionSet.al @@ -133,7 +133,6 @@ permissionset 6952 "Expense Agent - Objects" codeunit "Expense Auto Population" = X, codeunit "Expense Capabilities Provider" = X, codeunit "Expense Activity Log Mgt." = X, - codeunit "Expense Projects Builder" = X, codeunit "Exp. Policies To Eval Builder" = X, codeunit "Expense Consumption Handler" = X, codeunit "Expense Currency" = X, From b42ba3e4b3d01af354ca0f93b678bcf747056497 Mon Sep 17 00:00:00 2001 From: Bardur Knudsen Date: Mon, 24 Aug 2026 16:31:52 +0200 Subject: [PATCH 16/28] Re-added deleted objects due to build error --- src/Apps/W1/ExpenseAgent/app/app.json | 2 +- .../ExpenseManagementObjects.permissionset.al | 6 +- .../CreateExpenseCategories.Codeunit.al | 6 +- ....al => CreateExpenseLocations.Codeunit.al} | 2 +- ...> CreateExpenseRuleConditions.Codeunit.al} | 4 +- ...l => CreateExpenseRuleHeaders.Codeunit.al} | 4 +- .../CreateExpenseLocation.Codeunit.al | 78 +++++++++++++++++++ .../CreateExpenseRuleCondition.Codeunit.al | 16 ++++ .../CreateExpenseRuleHeader.Codeunit.al | 16 ++++ 9 files changed, 122 insertions(+), 12 deletions(-) rename src/Apps/W1/ExpenseAgent/app/src/Setup/Codeunits/{CreateExpenseLocation.Codeunit.al => CreateExpenseLocations.Codeunit.al} (99%) rename src/Apps/W1/ExpenseAgent/app/src/Setup/Codeunits/{CreateExpenseRuleCondition.Codeunit.al => CreateExpenseRuleConditions.Codeunit.al} (99%) rename src/Apps/W1/ExpenseAgent/app/src/Setup/Codeunits/{CreateExpenseRuleHeader.Codeunit.al => CreateExpenseRuleHeaders.Codeunit.al} (99%) create mode 100644 src/Apps/W1/ExpenseAgent/demo data/Demo Data/2.Master Data/CreateExpenseLocation.Codeunit.al create mode 100644 src/Apps/W1/ExpenseAgent/demo data/Demo Data/2.Master Data/CreateExpenseRuleCondition.Codeunit.al create mode 100644 src/Apps/W1/ExpenseAgent/demo data/Demo Data/2.Master Data/CreateExpenseRuleHeader.Codeunit.al diff --git a/src/Apps/W1/ExpenseAgent/app/app.json b/src/Apps/W1/ExpenseAgent/app/app.json index fd0a27b9b42..d5289321aeb 100644 --- a/src/Apps/W1/ExpenseAgent/app/app.json +++ b/src/Apps/W1/ExpenseAgent/app/app.json @@ -139,7 +139,7 @@ }, { "from": 7073, - "to": 7128 + "to": 7129 } ], "features": [ diff --git a/src/Apps/W1/ExpenseAgent/app/src/Permissions/ExpenseManagementObjects.permissionset.al b/src/Apps/W1/ExpenseAgent/app/src/Permissions/ExpenseManagementObjects.permissionset.al index 3e9270177c6..8ff969198eb 100644 --- a/src/Apps/W1/ExpenseAgent/app/src/Permissions/ExpenseManagementObjects.permissionset.al +++ b/src/Apps/W1/ExpenseAgent/app/src/Permissions/ExpenseManagementObjects.permissionset.al @@ -194,9 +194,9 @@ permissionset 6904 "Expense Management - Objects" codeunit "Expense Preview Post Instance" = X, codeunit "Expense Approval Helper" = X, codeunit "Create Expense Agent Setup" = X, - codeunit "Create Expense Location" = X, - codeunit "Create Expense Rule Condition" = X, - codeunit "Create Expense Rule Header" = X, + codeunit "Create Expense Locations" = X, + codeunit "Create Expense Rule Conditions" = X, + codeunit "Create Expense Rule Headers" = X, codeunit "Create Expense Categories" = X, codeunit "Create Expense VAT Rates" = X, codeunit "Create Expense GL Account" = X, diff --git a/src/Apps/W1/ExpenseAgent/app/src/Setup/Codeunits/CreateExpenseCategories.Codeunit.al b/src/Apps/W1/ExpenseAgent/app/src/Setup/Codeunits/CreateExpenseCategories.Codeunit.al index c4ca3195905..99bc85987fc 100644 --- a/src/Apps/W1/ExpenseAgent/app/src/Setup/Codeunits/CreateExpenseCategories.Codeunit.al +++ b/src/Apps/W1/ExpenseAgent/app/src/Setup/Codeunits/CreateExpenseCategories.Codeunit.al @@ -718,7 +718,7 @@ codeunit 6973 "Create Expense Categories" begin TempExpenseLocation.Reset(); TempExpenseLocation.DeleteAll(); - Codeunit.Run(Codeunit::"Create Expense Location", TempExpenseLocation); + Codeunit.Run(Codeunit::"Create Expense Locations", TempExpenseLocation); end; /// @@ -807,7 +807,7 @@ codeunit 6973 "Create Expense Categories" TempRuleHeader.Reset(); TempRuleHeader.DeleteAll(); - Codeunit.Run(Codeunit::"Create Expense Rule Header", TempRuleHeader); + Codeunit.Run(Codeunit::"Create Expense Rule Headers", TempRuleHeader); OnAfterBuildRuleSeeds(TempRuleHeader); end; @@ -820,7 +820,7 @@ codeunit 6973 "Create Expense Categories" TempRuleCondition.Reset(); TempRuleCondition.DeleteAll(); - Codeunit.Run(Codeunit::"Create Expense Rule Condition", TempRuleCondition); + Codeunit.Run(Codeunit::"Create Expense Rule Conditions", TempRuleCondition); OnAfterBuildRuleConditionSeeds(TempRuleCondition); end; diff --git a/src/Apps/W1/ExpenseAgent/app/src/Setup/Codeunits/CreateExpenseLocation.Codeunit.al b/src/Apps/W1/ExpenseAgent/app/src/Setup/Codeunits/CreateExpenseLocations.Codeunit.al similarity index 99% rename from src/Apps/W1/ExpenseAgent/app/src/Setup/Codeunits/CreateExpenseLocation.Codeunit.al rename to src/Apps/W1/ExpenseAgent/app/src/Setup/Codeunits/CreateExpenseLocations.Codeunit.al index 9226614233a..c2f1555b66a 100644 --- a/src/Apps/W1/ExpenseAgent/app/src/Setup/Codeunits/CreateExpenseLocation.Codeunit.al +++ b/src/Apps/W1/ExpenseAgent/app/src/Setup/Codeunits/CreateExpenseLocations.Codeunit.al @@ -4,7 +4,7 @@ // ------------------------------------------------------------------------------------------------ namespace Microsoft.ExpenseAgent; -codeunit 7104 "Create Expense Location" +codeunit 7104 "Create Expense Locations" { Access = Internal; InherentEntitlements = X; diff --git a/src/Apps/W1/ExpenseAgent/app/src/Setup/Codeunits/CreateExpenseRuleCondition.Codeunit.al b/src/Apps/W1/ExpenseAgent/app/src/Setup/Codeunits/CreateExpenseRuleConditions.Codeunit.al similarity index 99% rename from src/Apps/W1/ExpenseAgent/app/src/Setup/Codeunits/CreateExpenseRuleCondition.Codeunit.al rename to src/Apps/W1/ExpenseAgent/app/src/Setup/Codeunits/CreateExpenseRuleConditions.Codeunit.al index 0dfbbf8e341..09180a4b5b1 100644 --- a/src/Apps/W1/ExpenseAgent/app/src/Setup/Codeunits/CreateExpenseRuleCondition.Codeunit.al +++ b/src/Apps/W1/ExpenseAgent/app/src/Setup/Codeunits/CreateExpenseRuleConditions.Codeunit.al @@ -4,7 +4,7 @@ // ------------------------------------------------------------------------------------------------ namespace Microsoft.ExpenseAgent; -codeunit 7105 "Create Expense Rule Condition" +codeunit 7105 "Create Expense Rule Conditions" { Access = Internal; InherentEntitlements = X; @@ -298,5 +298,5 @@ codeunit 7105 "Create Expense Rule Condition" var CreateExpenseCategories: Codeunit "Create Expense Categories"; - CreateExpenseLocation: Codeunit "Create Expense Location"; + CreateExpenseLocation: Codeunit "Create Expense Locations"; } \ No newline at end of file diff --git a/src/Apps/W1/ExpenseAgent/app/src/Setup/Codeunits/CreateExpenseRuleHeader.Codeunit.al b/src/Apps/W1/ExpenseAgent/app/src/Setup/Codeunits/CreateExpenseRuleHeaders.Codeunit.al similarity index 99% rename from src/Apps/W1/ExpenseAgent/app/src/Setup/Codeunits/CreateExpenseRuleHeader.Codeunit.al rename to src/Apps/W1/ExpenseAgent/app/src/Setup/Codeunits/CreateExpenseRuleHeaders.Codeunit.al index 9d33a84a38b..141f342932a 100644 --- a/src/Apps/W1/ExpenseAgent/app/src/Setup/Codeunits/CreateExpenseRuleHeader.Codeunit.al +++ b/src/Apps/W1/ExpenseAgent/app/src/Setup/Codeunits/CreateExpenseRuleHeaders.Codeunit.al @@ -4,7 +4,7 @@ // ------------------------------------------------------------------------------------------------ namespace Microsoft.ExpenseAgent; -codeunit 7128 "Create Expense Rule Header" +codeunit 7128 "Create Expense Rule Headers" { Access = Internal; InherentEntitlements = X; @@ -301,5 +301,5 @@ codeunit 7128 "Create Expense Rule Header" var CreateExpenseCategories: Codeunit "Create Expense Categories"; - CreateExpenseLocation: Codeunit "Create Expense Location"; + CreateExpenseLocation: Codeunit "Create Expense Locations"; } \ No newline at end of file diff --git a/src/Apps/W1/ExpenseAgent/demo data/Demo Data/2.Master Data/CreateExpenseLocation.Codeunit.al b/src/Apps/W1/ExpenseAgent/demo data/Demo Data/2.Master Data/CreateExpenseLocation.Codeunit.al new file mode 100644 index 00000000000..24f2cd3f26a --- /dev/null +++ b/src/Apps/W1/ExpenseAgent/demo data/Demo Data/2.Master Data/CreateExpenseLocation.Codeunit.al @@ -0,0 +1,78 @@ +// ------------------------------------------------------------------------------------------------ +// Copyright (c) Microsoft Corporation. All rights reserved. +// Licensed under the MIT License. See License.txt in the project root for license information. +// ------------------------------------------------------------------------------------------------ +namespace Microsoft.ExpenseAgent; + +codeunit 8208 "Create Expense Location" +{ + InherentEntitlements = X; + InherentPermissions = X; + + trigger OnRun() + begin + Codeunit.Run(Codeunit::"Create Expense Locations"); // in the expense app + end; + + var + CanadaAllTok: Label 'CANADA-ALL', MaxLength = 20, Locked = true; + DenmarkAllTok: Label 'DENMARK-ALL', MaxLength = 20, Locked = true; + DomesticTok: Label 'DOMESTIC', MaxLength = 20, Locked = true; + FranceAllTok: Label 'FRANCE-ALL', MaxLength = 20, Locked = true; + GermanyAllTok: Label 'GERMANY-ALL', MaxLength = 20, Locked = true; + UKLondonTok: Label 'UK-LONDON', MaxLength = 20, Locked = true; + UKOtherTok: Label 'UK-OTHER', MaxLength = 20, Locked = true; + USAFloridaTok: Label 'USA-FLORIDA', MaxLength = 20, Locked = true; + USANYTok: Label 'USA-NY', MaxLength = 20, Locked = true; + USAOtherTok: Label 'USA-OTHER', MaxLength = 20, Locked = true; + + procedure CanadaAll(): Code[20] + begin + exit(CanadaAllTok); + end; + + procedure DenmarkAll(): Code[20] + begin + exit(DenmarkAllTok); + end; + + procedure Domestic(): Code[20] + begin + exit(DomesticTok); + end; + + procedure FranceAll(): Code[20] + begin + exit(FranceAllTok); + end; + + procedure GermanyAll(): Code[20] + begin + exit(GermanyAllTok); + end; + + procedure UKLondon(): Code[20] + begin + exit(UKLondonTok); + end; + + procedure UKOther(): Code[20] + begin + exit(UKOtherTok); + end; + + procedure USAFlorida(): Code[20] + begin + exit(USAFloridaTok); + end; + + procedure USANY(): Code[20] + begin + exit(USANYTok); + end; + + procedure USAOther(): Code[20] + begin + exit(USAOtherTok); + end; +} \ No newline at end of file diff --git a/src/Apps/W1/ExpenseAgent/demo data/Demo Data/2.Master Data/CreateExpenseRuleCondition.Codeunit.al b/src/Apps/W1/ExpenseAgent/demo data/Demo Data/2.Master Data/CreateExpenseRuleCondition.Codeunit.al new file mode 100644 index 00000000000..985568db69a --- /dev/null +++ b/src/Apps/W1/ExpenseAgent/demo data/Demo Data/2.Master Data/CreateExpenseRuleCondition.Codeunit.al @@ -0,0 +1,16 @@ +// ------------------------------------------------------------------------------------------------ +// Copyright (c) Microsoft Corporation. All rights reserved. +// Licensed under the MIT License. See License.txt in the project root for license information. +// ------------------------------------------------------------------------------------------------ +namespace Microsoft.ExpenseAgent; + +codeunit 8213 "Create Expense Rule Condition" +{ + InherentEntitlements = X; + InherentPermissions = X; + + trigger OnRun() + begin + Codeunit.Run(Codeunit::"Create Expense Rule Conditions"); // in the expense app + end; +} \ No newline at end of file diff --git a/src/Apps/W1/ExpenseAgent/demo data/Demo Data/2.Master Data/CreateExpenseRuleHeader.Codeunit.al b/src/Apps/W1/ExpenseAgent/demo data/Demo Data/2.Master Data/CreateExpenseRuleHeader.Codeunit.al new file mode 100644 index 00000000000..0a22216265f --- /dev/null +++ b/src/Apps/W1/ExpenseAgent/demo data/Demo Data/2.Master Data/CreateExpenseRuleHeader.Codeunit.al @@ -0,0 +1,16 @@ +// ------------------------------------------------------------------------------------------------ +// Copyright (c) Microsoft Corporation. All rights reserved. +// Licensed under the MIT License. See License.txt in the project root for license information. +// ------------------------------------------------------------------------------------------------ +namespace Microsoft.ExpenseAgent; + +codeunit 8212 "Create Expense Rule Header" +{ + InherentEntitlements = X; + InherentPermissions = X; + + trigger OnRun() + begin + Codeunit.Run(Codeunit::"Create Expense Rule Headers"); // in the expense app + end; +} \ No newline at end of file From 2eddc89a44f05b76ce76517d35b0a1be1e66c6bf Mon Sep 17 00:00:00 2001 From: Bardur Knudsen Date: Tue, 25 Aug 2026 09:55:40 +0200 Subject: [PATCH 17/28] Build error --- .../src/ExpenseEventSubscriberAT.Codeunit.al | 18 +++++++++--------- .../CreateExpenseRuleConditions.Codeunit.al | 2 +- 2 files changed, 10 insertions(+), 10 deletions(-) diff --git a/src/Apps/AT/ExpenseAgent_AT/app/src/ExpenseEventSubscriberAT.Codeunit.al b/src/Apps/AT/ExpenseAgent_AT/app/src/ExpenseEventSubscriberAT.Codeunit.al index 8053b8e4ccc..dac5ed01f88 100644 --- a/src/Apps/AT/ExpenseAgent_AT/app/src/ExpenseEventSubscriberAT.Codeunit.al +++ b/src/Apps/AT/ExpenseAgent_AT/app/src/ExpenseEventSubscriberAT.Codeunit.al @@ -83,15 +83,15 @@ codeunit 6914 "Expense Event Subscriber AT" [EventSubscriber(ObjectType::Codeunit, Codeunit::"Create Expense Categories", 'OnAfterBuildRuleConditionSeeds', '', false, false)] local procedure OnAfterBuildRuleConditionSeeds(var TempRuleCondition: Record "Expense Rule Condition" temporary) var - CreateExpenseRuleCondition: codeunit "Create Expense Rule Condition"; - begin - CreateExpenseRuleCondition.InsertExpenseRuleCondition(TempRuleCondition, PerDiemI(), CreateExpenseCategories.GetCANADAALLTxt(), 0D, 10000, "Expense Rule Condition Type"::"Daily Rate", 125); - CreateExpenseRuleCondition.InsertExpenseRuleCondition(TempRuleCondition, PerDiemI(), CreateExpenseCategories.GetDENMARKALLTxt(), 0D, 10000, "Expense Rule Condition Type"::"Daily Rate", 450); - CreateExpenseRuleCondition.InsertExpenseRuleCondition(TempRuleCondition, PerDiemA(), CreateExpenseCategories.GetDOMESTICTxt(), 0D, 10000, "Expense Rule Condition Type"::"Daily Rate", 50); - CreateExpenseRuleCondition.InsertExpenseRuleCondition(TempRuleCondition, PerDiemI(), CreateExpenseCategories.GetFRANCEALLTxt(), 0D, 10000, "Expense Rule Condition Type"::"Daily Rate", 110); - CreateExpenseRuleCondition.InsertExpenseRuleCondition(TempRuleCondition, PerDiemI(), CreateExpenseCategories.GetGERMANYALLTxt(), 0D, 10000, "Expense Rule Condition Type"::"Daily Rate", 105); - CreateExpenseRuleCondition.InsertExpenseRuleCondition(TempRuleCondition, PerDiemI(), CreateExpenseCategories.GetUKOTHERTxt(), 0D, 10000, "Expense Rule Condition Type"::"Daily Rate", 115); - CreateExpenseRuleCondition.InsertExpenseRuleCondition(TempRuleCondition, PerDiemI(), CreateExpenseCategories.GetUSAOTHERTxt(), 0D, 10000, "Expense Rule Condition Type"::"Daily Rate", 120); + CreateExpenseRuleConditions: codeunit "Create Expense Rule Conditions"; + begin + CreateExpenseRuleConditions.InsertExpenseRuleCondition(TempRuleCondition, PerDiemI(), CreateExpenseCategories.GetCANADAALLTxt(), 0D, 10000, "Expense Rule Condition Type"::"Daily Rate", 125); + CreateExpenseRuleConditions.InsertExpenseRuleCondition(TempRuleCondition, PerDiemI(), CreateExpenseCategories.GetDENMARKALLTxt(), 0D, 10000, "Expense Rule Condition Type"::"Daily Rate", 450); + CreateExpenseRuleConditions.InsertExpenseRuleCondition(TempRuleCondition, PerDiemA(), CreateExpenseCategories.GetDOMESTICTxt(), 0D, 10000, "Expense Rule Condition Type"::"Daily Rate", 50); + CreateExpenseRuleConditions.InsertExpenseRuleCondition(TempRuleCondition, PerDiemI(), CreateExpenseCategories.GetFRANCEALLTxt(), 0D, 10000, "Expense Rule Condition Type"::"Daily Rate", 110); + CreateExpenseRuleConditions.InsertExpenseRuleCondition(TempRuleCondition, PerDiemI(), CreateExpenseCategories.GetGERMANYALLTxt(), 0D, 10000, "Expense Rule Condition Type"::"Daily Rate", 105); + CreateExpenseRuleConditions.InsertExpenseRuleCondition(TempRuleCondition, PerDiemI(), CreateExpenseCategories.GetUKOTHERTxt(), 0D, 10000, "Expense Rule Condition Type"::"Daily Rate", 115); + CreateExpenseRuleConditions.InsertExpenseRuleCondition(TempRuleCondition, PerDiemI(), CreateExpenseCategories.GetUSAOTHERTxt(), 0D, 10000, "Expense Rule Condition Type"::"Daily Rate", 120); end; [EventSubscriber(ObjectType::Codeunit, Codeunit::"Create Expense Categories", 'OnBeforeAddCategorySeed', '', false, false)] diff --git a/src/Apps/W1/ExpenseAgent/app/src/Setup/Codeunits/CreateExpenseRuleConditions.Codeunit.al b/src/Apps/W1/ExpenseAgent/app/src/Setup/Codeunits/CreateExpenseRuleConditions.Codeunit.al index 09180a4b5b1..69735da646b 100644 --- a/src/Apps/W1/ExpenseAgent/app/src/Setup/Codeunits/CreateExpenseRuleConditions.Codeunit.al +++ b/src/Apps/W1/ExpenseAgent/app/src/Setup/Codeunits/CreateExpenseRuleConditions.Codeunit.al @@ -30,7 +30,7 @@ codeunit 7105 "Create Expense Rule Conditions" InsertExpenseRuleCondition(ExpenseRuleCondition, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.BrazilAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 100); InsertExpenseRuleCondition(ExpenseRuleCondition, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.SwitzerlandAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 100); InsertExpenseRuleCondition(ExpenseRuleCondition, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.SwitzerlandGeneva(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 100); - InsertExpenseRuleCondition(ExpenseRuleCondition, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.SwitzerlandGeneva(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 100); + InsertExpenseRuleCondition(ExpenseRuleCondition, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.SwitzerlandZurich(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 100); InsertExpenseRuleCondition(ExpenseRuleCondition, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.ChinaAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 100); InsertExpenseRuleCondition(ExpenseRuleCondition, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.CostaRicaAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 100); InsertExpenseRuleCondition(ExpenseRuleCondition, CreateExpenseCategories.GetPERDIEMTxt(), CreateExpenseLocation.CyprusAll(), 0D, 10000, Enum::"Expense Rule Condition Type"::"Daily Rate", 100); From a09c92a63027dce9f28bcbf7f5e1a9c09bb63cff Mon Sep 17 00:00:00 2001 From: Bardur Knudsen Date: Tue, 25 Aug 2026 13:37:26 +0200 Subject: [PATCH 18/28] Build error --- .../CreateExpenseCategories.Codeunit.al | 64 +++++++++---------- 1 file changed, 32 insertions(+), 32 deletions(-) diff --git a/src/Apps/W1/ExpenseAgent/app/src/Setup/Codeunits/CreateExpenseCategories.Codeunit.al b/src/Apps/W1/ExpenseAgent/app/src/Setup/Codeunits/CreateExpenseCategories.Codeunit.al index 99bc85987fc..4c1561f6ce7 100644 --- a/src/Apps/W1/ExpenseAgent/app/src/Setup/Codeunits/CreateExpenseCategories.Codeunit.al +++ b/src/Apps/W1/ExpenseAgent/app/src/Setup/Codeunits/CreateExpenseCategories.Codeunit.al @@ -1240,16 +1240,16 @@ codeunit 6973 "Create Expense Categories" exit; ExpenseCategory.Init(); - ExpenseCategory.Validate(Code, Code); - ExpenseCategory.Validate(Description, Description); - ExpenseCategory.Validate("Posting Description", PostingDescription); - ExpenseCategory.Validate("Expense Group", ExpenseGroupCode); - ExpenseCategory.Validate("Posting Group", PostingGroupCode); - ExpenseCategory.Validate("Default Payment Method", PaymentMethod); - ExpenseCategory.Validate(Refundable, IsRefundable); - ExpenseCategory.Validate("Prepayment-Cash Advance", IsPrepayment); - ExpenseCategory.Validate("Attachment Enforcement", AttachmentEnforcement); - ExpenseCategory.Validate("Expense Detail Required", DetailRequired); + ExpenseCategory.Code := Code; + ExpenseCategory.Description := Description; + ExpenseCategory."Posting Description" := PostingDescription; + ExpenseCategory."Expense Group" := ExpenseGroupCode; + ExpenseCategory."Posting Group" := PostingGroupCode; + ExpenseCategory."Default Payment Method" := PaymentMethod; + ExpenseCategory.Refundable := IsRefundable; + ExpenseCategory."Prepayment-Cash Advance" := IsPrepayment; + ExpenseCategory."Attachment Enforcement" := AttachmentEnforcement; + ExpenseCategory."Expense Detail Required" := DetailRequired; ExpenseCategory.Insert(true); end; @@ -1279,10 +1279,10 @@ codeunit 6973 "Create Expense Categories" if not EmployeePostingGroup.Get(Code) then exit; - EmployeePostingGroup.Validate("Expense Report Payable Account", ExpenseReportPayableAccount); - EmployeePostingGroup.Validate("Expense Payable Bank Paid Acc.", ExpensePayableBankPaidAccount); - EmployeePostingGroup.Validate("Expense Payable Card Paid Acc.", ExpensePayableCardPaidAccount); - EmployeePostingGroup.Validate("Exp. Report Prepayment Account", ExpenseReportPrepaymentAccount); + EmployeePostingGroup."Expense Report Payable Account" := ExpenseReportPayableAccount; + EmployeePostingGroup."Expense Payable Bank Paid Acc." := ExpensePayableBankPaidAccount; + EmployeePostingGroup."Expense Payable Card Paid Acc." := ExpensePayableCardPaidAccount; + EmployeePostingGroup."Exp. Report Prepayment Account" := ExpenseReportPrepaymentAccount; EmployeePostingGroup.Modify(true); end; @@ -1292,8 +1292,8 @@ codeunit 6973 "Create Expense Categories" exit; ExpenseGroup.Init(); - ExpenseGroup.Validate(Code, Code); - ExpenseGroup.Validate("Description", CopyStr(Description, 1, MaxStrLen(ExpenseGroup.Description))); + ExpenseGroup.Code := Code; + ExpenseGroup."Description" := CopyStr(Description, 1, MaxStrLen(ExpenseGroup.Description)); ExpenseGroup.Insert(true); end; @@ -1303,13 +1303,13 @@ codeunit 6973 "Create Expense Categories" exit; ExpensePostingGroup.Init(); - ExpensePostingGroup.Validate(Code, Code); - ExpensePostingGroup.Validate("Description", Description); - ExpensePostingGroup.Validate("Refundable Debit Account", RefundableDebitAccount); - ExpensePostingGroup.Validate("Non-Refundable Debit Account", NonRefundableDebitAccount); - ExpensePostingGroup.Validate("Prepayment Credit Account", PrepaymentCreditAccount); - ExpensePostingGroup.Validate("Debit Rounding Account", ExpenseDebitRoundingAccount); - ExpensePostingGroup.Validate("Credit Rounding Account", ExpenseCreditRoundingAccount); + ExpensePostingGroup.Code := Code; + ExpensePostingGroup."Description" := Description; + ExpensePostingGroup."Refundable Debit Account" := RefundableDebitAccount; + ExpensePostingGroup."Non-Refundable Debit Account" := NonRefundableDebitAccount; + ExpensePostingGroup."Prepayment Credit Account" := PrepaymentCreditAccount; + ExpensePostingGroup."Debit Rounding Account" := ExpenseDebitRoundingAccount; + ExpensePostingGroup."Credit Rounding Account" := ExpenseCreditRoundingAccount; ExpensePostingGroup.Insert(true); end; @@ -1319,11 +1319,11 @@ codeunit 6973 "Create Expense Categories" exit; ExpenseRuleHeader.Init(); - ExpenseRuleHeader.Validate("Expense Category Code", CategoryCode); - ExpenseRuleHeader.Validate("Expense Location", ExpenseLocationCode); + ExpenseRuleHeader."Expense Category Code" := CategoryCode; + ExpenseRuleHeader."Expense Location" := ExpenseLocationCode; if Currency.Get(CurrencyCode) then - ExpenseRuleHeader.Validate("Currency Code", CurrencyCode); - ExpenseRuleHeader.Validate("Justification Required", JustificationRequired); + ExpenseRuleHeader."Currency Code" := CurrencyCode; + ExpenseRuleHeader."Justification Required" := JustificationRequired; ExpenseRuleHeader.Insert(true); end; @@ -1344,11 +1344,11 @@ codeunit 6973 "Create Expense Categories" NextLineNo := 1; ExpenseRuleCondition.Init(); - ExpenseRuleCondition.Validate("Expense Category Code", CategoryCode); - ExpenseRuleCondition.Validate("Expense Location", ExpenseLocationCode); - ExpenseRuleCondition.Validate("Condition Type", ConditionType); - ExpenseRuleCondition.Validate("Line No.", NextLineNo); - ExpenseRuleCondition.Validate("Value", Value); + ExpenseRuleCondition."Expense Category Code" := CategoryCode; + ExpenseRuleCondition."Expense Location" := ExpenseLocationCode; + ExpenseRuleCondition."Condition Type" := ConditionType; + ExpenseRuleCondition."Line No." := NextLineNo; + ExpenseRuleCondition."Value" := Value; ExpenseRuleCondition.Insert(true); end; From 82ba51fa4bee2c7045e2554e1f6a828dc796e849 Mon Sep 17 00:00:00 2001 From: Bardur Knudsen Date: Fri, 28 Aug 2026 15:18:17 +0200 Subject: [PATCH 19/28] Add suggested fix --- .../ContosoExpenseAgent.Codeunit.al | 16 ++++++++-------- 1 file changed, 8 insertions(+), 8 deletions(-) diff --git a/src/Apps/W1/ExpenseAgent/demo data/Demo Tool/Contoso Helpers/ContosoExpenseAgent.Codeunit.al b/src/Apps/W1/ExpenseAgent/demo data/Demo Tool/Contoso Helpers/ContosoExpenseAgent.Codeunit.al index 5d6c80f15a5..e06ddf6dd5b 100644 --- a/src/Apps/W1/ExpenseAgent/demo data/Demo Tool/Contoso Helpers/ContosoExpenseAgent.Codeunit.al +++ b/src/Apps/W1/ExpenseAgent/demo data/Demo Tool/Contoso Helpers/ContosoExpenseAgent.Codeunit.al @@ -215,14 +215,14 @@ codeunit 8205 "Contoso Expense Agent" exit; end; - ExpenseRuleHeader.Validate("Expense Category Code", ExpenseCategoryCode); - ExpenseRuleHeader.Validate("Expense Location", ExpenseLocationCode); - ExpenseRuleHeader.Validate("Effective Date", EffectiveDate); - ExpenseRuleHeader.Validate("Justification Required", JustificationRequired); - ExpenseRuleHeader.Validate("Required Specific Merchant", RequiredSpecificMerchant); - ExpenseRuleHeader.Validate("Specific Merchant Name", SpecificMerchantName); - ExpenseRuleHeader.Validate("Currency Code", CurrencyCode); - ExpenseRuleHeader.Validate("Unit of Measure Code", UnitOfMeasureCode); + ExpenseRuleHeader."Expense Category Code" := ExpenseCategoryCode; + ExpenseRuleHeader."Expense Location" := ExpenseLocationCode; + ExpenseRuleHeader."Effective Date" := EffectiveDate; + ExpenseRuleHeader."Justification Required" := JustificationRequired; + ExpenseRuleHeader."Required Specific Merchant" := RequiredSpecificMerchant; + ExpenseRuleHeader."Specific Merchant Name" := SpecificMerchantName; + ExpenseRuleHeader."Currency Code" := CurrencyCode; + ExpenseRuleHeader."Unit of Measure Code" := UnitOfMeasureCode; if Exists then ExpenseRuleHeader.Modify(true) From ab374c675bceaa16b58650407964a487b5582b29 Mon Sep 17 00:00:00 2001 From: Bardur Knudsen Date: Sun, 30 Aug 2026 22:05:50 +0200 Subject: [PATCH 20/28] attempt to bypass invalid setup data --- .../Setup/Codeunits/CreateExpenseRuleHeaders.Codeunit.al | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/src/Apps/W1/ExpenseAgent/app/src/Setup/Codeunits/CreateExpenseRuleHeaders.Codeunit.al b/src/Apps/W1/ExpenseAgent/app/src/Setup/Codeunits/CreateExpenseRuleHeaders.Codeunit.al index 141f342932a..90fbb07a56f 100644 --- a/src/Apps/W1/ExpenseAgent/app/src/Setup/Codeunits/CreateExpenseRuleHeaders.Codeunit.al +++ b/src/Apps/W1/ExpenseAgent/app/src/Setup/Codeunits/CreateExpenseRuleHeaders.Codeunit.al @@ -281,8 +281,15 @@ codeunit 7128 "Create Expense Rule Headers" local procedure InsertExpenseRuleHeader(var ExpenseRuleHeader: Record "Expense Rule Header"; ExpenseCategoryCode: Code[20]; ExpenseLocationCode: Code[20]; EffectiveDate: Date; JustificationRequired: Enum "Expense Justification"; RequiredSpecificMerchant: Boolean; SpecificMerchantName: Text[100]; CurrencyCode: Code[10]; UnitOfMeasureCode: Code[10]) var + ExistingCategory: Record "Expense Category"; IsHandled: Boolean; begin + // prevent inserting invalid data + if ExpenseCategoryCode <> '' then + if ExistingCategory.Get(ExpenseCategoryCode) then + if ExistingCategory."Expense Detail Required" <> ExistingCategory."Expense Detail Required"::"Per Diem" then + exit; + CreateExpenseCategories.OnBeforeAddRuleSeed(ExpenseRuleHeader, ExpenseCategoryCode, ExpenseLocationCode, CurrencyCode, JustificationRequired, IsHandled); if IsHandled then exit; From 87f03be7badae41dca1d458600468d4aa05a57e3 Mon Sep 17 00:00:00 2001 From: Bardur Knudsen Date: Mon, 31 Aug 2026 11:38:58 +0200 Subject: [PATCH 21/28] attempt to bypass invalid setup data --- .../ContosoExpenseAgent.Codeunit.al | 48 +++++++++++-------- 1 file changed, 27 insertions(+), 21 deletions(-) diff --git a/src/Apps/W1/ExpenseAgent/demo data/Demo Tool/Contoso Helpers/ContosoExpenseAgent.Codeunit.al b/src/Apps/W1/ExpenseAgent/demo data/Demo Tool/Contoso Helpers/ContosoExpenseAgent.Codeunit.al index e06ddf6dd5b..cccb1036a89 100644 --- a/src/Apps/W1/ExpenseAgent/demo data/Demo Tool/Contoso Helpers/ContosoExpenseAgent.Codeunit.al +++ b/src/Apps/W1/ExpenseAgent/demo data/Demo Tool/Contoso Helpers/ContosoExpenseAgent.Codeunit.al @@ -280,34 +280,40 @@ codeunit 8205 "Contoso Expense Agent" internal procedure InsertExpense(ExpenseUserNo: Code[20]; ExpenseCategoryCode: Code[20]; ExpenseLocationCode: Code[20]; Description: Text[100]; Justification: Text[100]; ExpenseDate: Date; CurrencyCode: Code[10]; Amount: Decimal; MerchantName: Text[100]; PaymentMethodCode: Code[10]; Refundable: Boolean; Billable: Boolean; BillableToCustomer: Code[20]; StartingDateTime: DateTime; EndingDateTime: DateTime; NonRefundableAmount: Decimal; Mileage: Decimal; StartingPoint: Text[50]; EndingPoint: Text[50]; ExpenseExtDocNo: Text[30]; JobNo: Code[20]; JobTaskNo: Code[20]): Record Expense var + ExpenseCategory: Record "Expense Category"; Expense: Record Expense; begin - Expense.Validate("Expense User No.", ExpenseUserNo); - Expense.Validate("Expense Category", ExpenseCategoryCode); - Expense.Validate("Expense Location", ExpenseLocationCode); - Expense.Validate("Description", Description); - Expense.Validate("Justification", Justification); - Expense.Validate("Expense Date", ExpenseDate); + // prevent inserting invalid data + if ExpenseCategoryCode <> '' then + if ExpenseCategory.Get(ExpenseCategoryCode) then; + + Expense."Expense User No." := ExpenseUserNo; + Expense."Expense Category" := ExpenseCategoryCode; + Expense."Expense Detail Required" := ExpenseCategory."Expense Detail Required"; + Expense."Expense Location" := ExpenseLocationCode; + Expense."Description" := Description; + Expense."Justification" := Justification; + Expense."Expense Date" := ExpenseDate; ValidateCurrencyCodeInExpense(Expense, CurrencyCode); if Amount <> 0 then - Expense.Validate("Amount", Amount); - Expense.Validate("Merchant Name", MerchantName); - Expense.Validate("Payment Method Code", PaymentMethodCode); - Expense.Validate(Refundable, Refundable); - Expense.Validate(Billable, Billable); - Expense.Validate("Billable to Customer", BillableToCustomer); - Expense.Validate("Starting Date and Time", StartingDateTime); - Expense.Validate("Ending Date and Time", EndingDateTime); - Expense.Validate("Non-Refundable Amount", NonRefundableAmount); + Expense."Amount" := Amount; + Expense."Merchant Name" := MerchantName; + Expense."Payment Method Code" := PaymentMethodCode; + Expense.Refundable := Refundable; + Expense.Billable := Billable; + Expense."Billable to Customer" := BillableToCustomer; + Expense."Starting Date and Time" := StartingDateTime; + Expense."Ending Date and Time" := EndingDateTime; + Expense."Non-Refundable Amount" := NonRefundableAmount; if Mileage <> 0 then - Expense.Validate("Mileage", Mileage); - Expense.Validate("Starting Point", StartingPoint); - Expense.Validate("Ending Point", EndingPoint); - Expense.Validate("Expense Ext. Doc. No.", ExpenseExtDocNo); - Expense.Validate("Job No.", JobNo); - Expense.Validate("Job Task No.", JobTaskNo); + Expense."Mileage" := Mileage; + Expense."Starting Point" := StartingPoint; + Expense."Ending Point" := EndingPoint; + Expense."Expense Ext. Doc. No." := ExpenseExtDocNo; + Expense."Job No." := JobNo; + Expense."Job Task No." := JobTaskNo; Expense.Insert(true); exit(Expense); From a3598647fddd2610d9698268ca5fd4d58401fc91 Mon Sep 17 00:00:00 2001 From: Bardur Knudsen Date: Mon, 31 Aug 2026 16:11:46 +0200 Subject: [PATCH 22/28] duplicate ID --- .../src/Setup/Codeunits/CreateExpenseRuleConditions.Codeunit.al | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/Apps/W1/ExpenseAgent/app/src/Setup/Codeunits/CreateExpenseRuleConditions.Codeunit.al b/src/Apps/W1/ExpenseAgent/app/src/Setup/Codeunits/CreateExpenseRuleConditions.Codeunit.al index 69735da646b..19df417c5de 100644 --- a/src/Apps/W1/ExpenseAgent/app/src/Setup/Codeunits/CreateExpenseRuleConditions.Codeunit.al +++ b/src/Apps/W1/ExpenseAgent/app/src/Setup/Codeunits/CreateExpenseRuleConditions.Codeunit.al @@ -4,7 +4,7 @@ // ------------------------------------------------------------------------------------------------ namespace Microsoft.ExpenseAgent; -codeunit 7105 "Create Expense Rule Conditions" +codeunit 7126 "Create Expense Rule Conditions" { Access = Internal; InherentEntitlements = X; From 81417dbaa789649b595615cb3d4b3b6a99996782 Mon Sep 17 00:00:00 2001 From: "copilot-swe-agent[bot]" <198982749+Copilot@users.noreply.github.com> Date: Tue, 1 Sep 2026 11:37:24 +0000 Subject: [PATCH 23/28] Fix country per diem demo data Co-authored-by: BardurKnudsen <8470791+BardurKnudsen@users.noreply.github.com> --- .../Country/CreateExpenseCountryData.Codeunit.al | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/src/Apps/W1/ExpenseAgent/demo data/Country/CreateExpenseCountryData.Codeunit.al b/src/Apps/W1/ExpenseAgent/demo data/Country/CreateExpenseCountryData.Codeunit.al index c6bed8083b5..2d768306901 100644 --- a/src/Apps/W1/ExpenseAgent/demo data/Country/CreateExpenseCountryData.Codeunit.al +++ b/src/Apps/W1/ExpenseAgent/demo data/Country/CreateExpenseCountryData.Codeunit.al @@ -154,13 +154,13 @@ codeunit 8222 "Create Expense Country Data" CreateExpensePaymentMethod: Codeunit "Create Expense Payment Method"; ContosoExpenseAgent: Codeunit "Contoso Expense Agent"; begin + ContosoExpenseAgent.SetOverwriteData(true); if CountryCode = 'AT' then begin ContosoExpenseAgent.InsertExpenseCategory(PerDiemI(), PerDiemByAssignedPolicyLbl, PerDiemIByAssignedPolicyPostingLbl, ExpensePerDiemI(), Enum::"Expense Attachment Enforcement"::" ", CreateExpensePaymentMethod.Cash(), false, false, CreateExpenseGroup.Travel(), true, Enum::"Expense Reimbursement Type"::"Employee Paid", Enum::"Expense Detail Needed"::"Per Diem"); ContosoExpenseAgent.InsertExpenseCategory(PerDiemA(), PerDiemByAssignedPolicyLbl, PerDiemAByAssignedPolicyPostingLbl, ExpensePerDiemA(), Enum::"Expense Attachment Enforcement"::" ", CreateExpensePaymentMethod.Cash(), false, false, CreateExpenseGroup.Travel(), true, Enum::"Expense Reimbursement Type"::"Employee Paid", Enum::"Expense Detail Needed"::"Per Diem"); - exit; - end; - - ContosoExpenseAgent.InsertExpenseCategory(PerDiem(), PerDiemByAssignedPolicyLbl, PerDiemByAssignedPolicyPostingLbl, GetExpensePerDiemPostingGroup(), Enum::"Expense Attachment Enforcement"::" ", CreateExpensePaymentMethod.Cash(), false, false, CreateExpenseGroup.Travel(), true, Enum::"Expense Reimbursement Type"::"Employee Paid", Enum::"Expense Detail Needed"::"Per Diem"); + end else + ContosoExpenseAgent.InsertExpenseCategory(PerDiem(), PerDiemByAssignedPolicyLbl, PerDiemByAssignedPolicyPostingLbl, GetExpensePerDiemPostingGroup(), Enum::"Expense Attachment Enforcement"::" ", CreateExpensePaymentMethod.Cash(), false, false, CreateExpenseGroup.Travel(), true, Enum::"Expense Reimbursement Type"::"Employee Paid", Enum::"Expense Detail Needed"::"Per Diem"); + ContosoExpenseAgent.SetOverwriteData(false); end; local procedure CreateExpenseSubcategories(CountryCode: Code[10]) From 42778a09c03ef4f6fd22bd951d7d0baad35717c3 Mon Sep 17 00:00:00 2001 From: Bardur Knudsen Date: Tue, 1 Sep 2026 21:44:21 +0200 Subject: [PATCH 24/28] Revert name changes --- .../src/Setup/Codeunits/CreateExpenseCategories.Codeunit.al | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/Apps/W1/ExpenseAgent/app/src/Setup/Codeunits/CreateExpenseCategories.Codeunit.al b/src/Apps/W1/ExpenseAgent/app/src/Setup/Codeunits/CreateExpenseCategories.Codeunit.al index 74a053542e2..3131f767b8c 100644 --- a/src/Apps/W1/ExpenseAgent/app/src/Setup/Codeunits/CreateExpenseCategories.Codeunit.al +++ b/src/Apps/W1/ExpenseAgent/app/src/Setup/Codeunits/CreateExpenseCategories.Codeunit.al @@ -1496,12 +1496,12 @@ codeunit 6973 "Create Expense Categories" end; [IntegrationEvent(false, false)] - internal procedure OnBeforeAddRuleSeed(var ExpenseRuleHeader: Record "Expense Rule Header"; var CategoryCode: Code[20]; var ExpenseLocationCode: Code[20]; var CurrencyCode: Code[10]; var JustificationRequired: Enum "Expense Justification"; var IsHandled: Boolean) + internal procedure OnBeforeAddRuleSeed(var TempRuleHeader: Record "Expense Rule Header"; var CategoryCode: Code[20]; var ExpenseLocationCode: Code[20]; var CurrencyCode: Code[10]; var JustificationRequired: Enum "Expense Justification"; var IsHandled: Boolean) begin end; [IntegrationEvent(false, false)] - internal procedure OnBeforeAddRuleConditionSeed(var RuleCondition: Record "Expense Rule Condition"; var CategoryCode: Code[20]; var ExpenseLocationCode: Code[20]; var ConditionType: Enum "Expense Rule Condition Type"; var Value: Decimal; var IsHandled: Boolean) + internal procedure OnBeforeAddRuleConditionSeed(var TempRuleCondition: Record "Expense Rule Condition"; var CategoryCode: Code[20]; var ExpenseLocationCode: Code[20]; var ConditionType: Enum "Expense Rule Condition Type"; var Value: Decimal; var IsHandled: Boolean) begin end; } \ No newline at end of file From 173ff18fba9d2fa3c130e2f512e72c91b8925c7c Mon Sep 17 00:00:00 2001 From: Bardur Knudsen Date: Wed, 2 Sep 2026 16:52:00 +0200 Subject: [PATCH 25/28] Improve error handling so we get call stacks --- .../src/ExpenseReport/Codeunits/ExpenseReportPost.Codeunit.al | 1 + .../Codeunits/ReleaseExpReportDocument.Codeunit.al | 4 +++- 2 files changed, 4 insertions(+), 1 deletion(-) diff --git a/src/Apps/W1/ExpenseAgent/app/src/ExpenseReport/Codeunits/ExpenseReportPost.Codeunit.al b/src/Apps/W1/ExpenseAgent/app/src/ExpenseReport/Codeunits/ExpenseReportPost.Codeunit.al index cd9c083fde6..84f363e3acb 100644 --- a/src/Apps/W1/ExpenseAgent/app/src/ExpenseReport/Codeunits/ExpenseReportPost.Codeunit.al +++ b/src/Apps/W1/ExpenseAgent/app/src/ExpenseReport/Codeunits/ExpenseReportPost.Codeunit.al @@ -227,6 +227,7 @@ codeunit 6987 "Expense Report-Post" ExpenseReportLine: Record "Expense Report Line"; begin ExpenseReportLine.SetRange("Document No.", ExpenseReportHeader."No."); + ExpenseReportLine.SetFilter("Reimbursement Type", '<>%1', ExpenseReportLine."Reimbursement Type"::" "); // to omit invalid lines if ExpenseReportLine.FindSet() then repeat ExpenseReportLine.TestField("Expense Category"); diff --git a/src/Apps/W1/ExpenseAgent/app/src/ExpenseReport/Codeunits/ReleaseExpReportDocument.Codeunit.al b/src/Apps/W1/ExpenseAgent/app/src/ExpenseReport/Codeunits/ReleaseExpReportDocument.Codeunit.al index 3bc01d31a86..182daebba35 100644 --- a/src/Apps/W1/ExpenseAgent/app/src/ExpenseReport/Codeunits/ReleaseExpReportDocument.Codeunit.al +++ b/src/Apps/W1/ExpenseAgent/app/src/ExpenseReport/Codeunits/ReleaseExpReportDocument.Codeunit.al @@ -28,6 +28,7 @@ codeunit 6984 "Release Exp. Report Document" CannotReleaseDocumentWithNothingToRefundErr: Label 'Cannot release the Expense Report No. %1 because there is nothing to refund for this Line No. %2.', Comment = '%1 - Expense No. , %2 - Line No.'; PolicyEvaluationNotCurrentErr: Label 'One or more expense lines have a policy evaluation that is not up to date. Re-run policy evaluation and approve again.'; PolicyEvaluationNotCurrentCodeTok: Label ' (PolicyEvaluationNotCurrent)', Locked = true; + ReimbursementErr: Label 'Reimbursement type must be set to a value in expense report %1, line %2 with description %3.', Comment = '%1 - Expense No. , %2 - Line No., %3 - description'; local procedure ReleaseExpenseReport() var @@ -75,7 +76,8 @@ codeunit 6984 "Release Exp. Report Document" ExpenseSubCategory.TestField(Inactive, false); ExpenseReportLine.TestField(Description); - ExpenseReportLine.TestField("Reimbursement Type"); + if ExpenseReportLine."Reimbursement Type" = ExpenseReportLine."Reimbursement Type"::" " then + Error(ReimbursementErr, ExpenseReportLine."Expense No.", ExpenseReportLine."Line No.", ExpenseReportLine.Description); if ExpenseReportLine."Job No." <> '' then ExpenseReportLine.TestField("Job Task No."); From 6c41e2afc4733c5e80b27dc54efe39b4d557fe0c Mon Sep 17 00:00:00 2001 From: Bardur Knudsen Date: Mon, 7 Sep 2026 14:08:35 +0200 Subject: [PATCH 26/28] Added validate --- .../Demo Tool/Contoso Helpers/ContosoExpenseAgent.Codeunit.al | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/Apps/W1/ExpenseAgent/demo data/Demo Tool/Contoso Helpers/ContosoExpenseAgent.Codeunit.al b/src/Apps/W1/ExpenseAgent/demo data/Demo Tool/Contoso Helpers/ContosoExpenseAgent.Codeunit.al index cccb1036a89..4790b91fec3 100644 --- a/src/Apps/W1/ExpenseAgent/demo data/Demo Tool/Contoso Helpers/ContosoExpenseAgent.Codeunit.al +++ b/src/Apps/W1/ExpenseAgent/demo data/Demo Tool/Contoso Helpers/ContosoExpenseAgent.Codeunit.al @@ -300,7 +300,7 @@ codeunit 8205 "Contoso Expense Agent" if Amount <> 0 then Expense."Amount" := Amount; Expense."Merchant Name" := MerchantName; - Expense."Payment Method Code" := PaymentMethodCode; + Expense.Validate("Payment Method Code", PaymentMethodCode); Expense.Refundable := Refundable; Expense.Billable := Billable; Expense."Billable to Customer" := BillableToCustomer; From 2cd2132983c44a641d4b6248a55c1907401ed6b1 Mon Sep 17 00:00:00 2001 From: Bardur Knudsen Date: Mon, 7 Sep 2026 14:59:49 +0200 Subject: [PATCH 27/28] ID collision --- .../app/src/Setup/Codeunits/CreateExpenseLocations.Codeunit.al | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/Apps/W1/ExpenseAgent/app/src/Setup/Codeunits/CreateExpenseLocations.Codeunit.al b/src/Apps/W1/ExpenseAgent/app/src/Setup/Codeunits/CreateExpenseLocations.Codeunit.al index c2f1555b66a..bd0f65f6fb7 100644 --- a/src/Apps/W1/ExpenseAgent/app/src/Setup/Codeunits/CreateExpenseLocations.Codeunit.al +++ b/src/Apps/W1/ExpenseAgent/app/src/Setup/Codeunits/CreateExpenseLocations.Codeunit.al @@ -4,7 +4,7 @@ // ------------------------------------------------------------------------------------------------ namespace Microsoft.ExpenseAgent; -codeunit 7104 "Create Expense Locations" +codeunit 7124 "Create Expense Locations" { Access = Internal; InherentEntitlements = X; From f3964f982a7574b4d9fbf9c09d41edaec8d2dec1 Mon Sep 17 00:00:00 2001 From: Bardur Knudsen Date: Tue, 8 Sep 2026 12:47:28 +0200 Subject: [PATCH 28/28] Failing test --- .../src/ExpenseReport/Codeunits/ExpenseReportPost.Codeunit.al | 1 - 1 file changed, 1 deletion(-) diff --git a/src/Apps/W1/ExpenseAgent/app/src/ExpenseReport/Codeunits/ExpenseReportPost.Codeunit.al b/src/Apps/W1/ExpenseAgent/app/src/ExpenseReport/Codeunits/ExpenseReportPost.Codeunit.al index 84f363e3acb..cd9c083fde6 100644 --- a/src/Apps/W1/ExpenseAgent/app/src/ExpenseReport/Codeunits/ExpenseReportPost.Codeunit.al +++ b/src/Apps/W1/ExpenseAgent/app/src/ExpenseReport/Codeunits/ExpenseReportPost.Codeunit.al @@ -227,7 +227,6 @@ codeunit 6987 "Expense Report-Post" ExpenseReportLine: Record "Expense Report Line"; begin ExpenseReportLine.SetRange("Document No.", ExpenseReportHeader."No."); - ExpenseReportLine.SetFilter("Reimbursement Type", '<>%1', ExpenseReportLine."Reimbursement Type"::" "); // to omit invalid lines if ExpenseReportLine.FindSet() then repeat ExpenseReportLine.TestField("Expense Category");