diff --git a/Rappen.XTB.Helper b/Rappen.XTB.Helper
index 7e96079..87cdfa5 160000
--- a/Rappen.XTB.Helper
+++ b/Rappen.XTB.Helper
@@ -1 +1 @@
-Subproject commit 7e96079015f6a01804e438df3b4eeaa9708b812f
+Subproject commit 87cdfa598e626a86818340460323ab52cf4342ab
diff --git a/XRMTokensRun.nuspec b/XRMTokensRun.nuspec
index 3bdcfb0..2423423 100644
--- a/XRMTokensRun.nuspec
+++ b/XRMTokensRun.nuspec
@@ -44,10 +44,13 @@
Copyright 2021-2022 Jonas Rapp
XrmToolBox Plugins XRMTokensRunner
-
+
+
+
+
\ No newline at end of file
diff --git a/XRMTokensRun.sln b/XRMTokensRun.sln
index 109915c..0f8728b 100644
--- a/XRMTokensRun.sln
+++ b/XRMTokensRun.sln
@@ -8,13 +8,14 @@ Project("{D954291E-2A0B-460D-934E-DC6B0785DB48}") = "Rappen.XRM.Helpers", "Rappe
EndProject
Project("{D954291E-2A0B-460D-934E-DC6B0785DB48}") = "Rappen.XTB.Helpers", "Rappen.XTB.Helper\Rappen.XTB.Helpers\Rappen.XTB.Helpers.shproj", "{0B88B381-EE9D-41E8-A62C-90152C42DE90}"
EndProject
+Project("{D954291E-2A0B-460D-934E-DC6B0785DB48}") = "Rappen.XRM.Tokens", "Rappen.XTB.Helper\Rappen.XRM.Tokens\Rappen.XRM.Tokens.shproj", "{B721386D-0FDF-415F-975E-A4F8D60CD962}"
+EndProject
+Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Solution Items", "Solution Items", "{BA0F5242-EE4A-4E14-8175-E42626257831}"
+ ProjectSection(SolutionItems) = preProject
+ XRMTokensRun.nuspec = XRMTokensRun.nuspec
+ EndProjectSection
+EndProject
Global
- GlobalSection(SharedMSBuildProjectFiles) = preSolution
- Rappen.XTB.Helper\Rappen.XTB.Helpers\Rappen.XTB.Helpers.projitems*{0b88b381-ee9d-41e8-a62c-90152c42de90}*SharedItemsImports = 13
- Rappen.XTB.Helper\Rappen.XRM.Helpers\Rappen.XRM.Helpers.projitems*{2ebf1257-150f-46c8-8bbd-2a9235c0eb45}*SharedItemsImports = 13
- Rappen.XTB.Helper\Rappen.XRM.Helpers\Rappen.XRM.Helpers.projitems*{731361be-5619-4e95-a472-9c6f9b6ecb73}*SharedItemsImports = 4
- Rappen.XTB.Helper\Rappen.XTB.Helpers\Rappen.XTB.Helpers.projitems*{731361be-5619-4e95-a472-9c6f9b6ecb73}*SharedItemsImports = 4
- EndGlobalSection
GlobalSection(SolutionConfigurationPlatforms) = preSolution
Debug|Any CPU = Debug|Any CPU
Release|Any CPU = Release|Any CPU
@@ -31,4 +32,12 @@ Global
GlobalSection(ExtensibilityGlobals) = postSolution
SolutionGuid = {7F79F08B-8027-4C05-840D-812701497308}
EndGlobalSection
+ GlobalSection(SharedMSBuildProjectFiles) = preSolution
+ Rappen.XTB.Helper\Rappen.XTB.Helpers\Rappen.XTB.Helpers.projitems*{0b88b381-ee9d-41e8-a62c-90152c42de90}*SharedItemsImports = 13
+ Rappen.XTB.Helper\Rappen.XRM.Helpers\Rappen.XRM.Helpers.projitems*{2ebf1257-150f-46c8-8bbd-2a9235c0eb45}*SharedItemsImports = 13
+ Rappen.XTB.Helper\Rappen.XRM.Helpers\Rappen.XRM.Helpers.projitems*{731361be-5619-4e95-a472-9c6f9b6ecb73}*SharedItemsImports = 4
+ Rappen.XTB.Helper\Rappen.XRM.Tokens\Rappen.XRM.Tokens.projitems*{731361be-5619-4e95-a472-9c6f9b6ecb73}*SharedItemsImports = 4
+ Rappen.XTB.Helper\Rappen.XTB.Helpers\Rappen.XTB.Helpers.projitems*{731361be-5619-4e95-a472-9c6f9b6ecb73}*SharedItemsImports = 4
+ Rappen.XTB.Helper\Rappen.XRM.Tokens\Rappen.XRM.Tokens.projitems*{b721386d-0fdf-415f-975e-a4f8d60cd962}*SharedItemsImports = 13
+ EndGlobalSection
EndGlobal
diff --git a/XRMTokensRun/GetAttribute.Designer.cs b/XRMTokensRun/GetAttribute.Designer.cs
index 22a6e86..61a8cf3 100644
--- a/XRMTokensRun/GetAttribute.Designer.cs
+++ b/XRMTokensRun/GetAttribute.Designer.cs
@@ -313,6 +313,7 @@ private void InitializeComponent()
this.AutoScaleDimensions = new System.Drawing.SizeF(8F, 16F);
this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
this.BackColor = System.Drawing.SystemColors.Window;
+ this.CancelButton = this.button2;
this.ClientSize = new System.Drawing.Size(575, 437);
this.Controls.Add(this.chkRecurdUrl);
this.Controls.Add(this.label8);
diff --git a/XRMTokensRun/GetChildEntityAttribute.Designer.cs b/XRMTokensRun/GetChildEntityAttribute.Designer.cs
index d086a83..1f59009 100644
--- a/XRMTokensRun/GetChildEntityAttribute.Designer.cs
+++ b/XRMTokensRun/GetChildEntityAttribute.Designer.cs
@@ -76,7 +76,7 @@ private void InitializeComponent()
this.label1.Location = new System.Drawing.Point(33, 156);
this.label1.Margin = new System.Windows.Forms.Padding(4, 0, 4, 0);
this.label1.Name = "label1";
- this.label1.Size = new System.Drawing.Size(53, 16);
+ this.label1.Size = new System.Drawing.Size(52, 16);
this.label1.TabIndex = 2;
this.label1.Text = "Lookup";
//
@@ -98,7 +98,7 @@ private void InitializeComponent()
this.label2.Location = new System.Drawing.Point(33, 90);
this.label2.Margin = new System.Windows.Forms.Padding(4, 0, 4, 0);
this.label2.Name = "label2";
- this.label2.Size = new System.Drawing.Size(44, 16);
+ this.label2.Size = new System.Drawing.Size(43, 16);
this.label2.TabIndex = 4;
this.label2.Text = "Table";
//
@@ -117,7 +117,7 @@ private void InitializeComponent()
this.label3.Location = new System.Drawing.Point(33, 124);
this.label3.Margin = new System.Windows.Forms.Padding(4, 0, 4, 0);
this.label3.Name = "label3";
- this.label3.Size = new System.Drawing.Size(77, 16);
+ this.label3.Size = new System.Drawing.Size(76, 16);
this.label3.TabIndex = 7;
this.label3.Text = "Child Table";
//
@@ -127,7 +127,7 @@ private void InitializeComponent()
this.label4.Location = new System.Drawing.Point(33, 188);
this.label4.Margin = new System.Windows.Forms.Padding(4, 0, 4, 0);
this.label4.Name = "label4";
- this.label4.Size = new System.Drawing.Size(89, 16);
+ this.label4.Size = new System.Drawing.Size(88, 16);
this.label4.TabIndex = 9;
this.label4.Text = "Show Column";
//
@@ -137,7 +137,7 @@ private void InitializeComponent()
this.label5.Location = new System.Drawing.Point(33, 219);
this.label5.Margin = new System.Windows.Forms.Padding(4, 0, 4, 0);
this.label5.Name = "label5";
- this.label5.Size = new System.Drawing.Size(61, 16);
+ this.label5.Size = new System.Drawing.Size(60, 16);
this.label5.TabIndex = 10;
this.label5.Text = "Order By";
//
@@ -147,7 +147,7 @@ private void InitializeComponent()
this.label6.Location = new System.Drawing.Point(33, 270);
this.label6.Margin = new System.Windows.Forms.Padding(4, 0, 4, 0);
this.label6.Name = "label6";
- this.label6.Size = new System.Drawing.Size(68, 16);
+ this.label6.Size = new System.Drawing.Size(67, 16);
this.label6.TabIndex = 11;
this.label6.Text = "Separator";
//
@@ -167,7 +167,7 @@ private void InitializeComponent()
this.label7.Location = new System.Drawing.Point(33, 299);
this.label7.Margin = new System.Windows.Forms.Padding(4, 0, 4, 0);
this.label7.Name = "label7";
- this.label7.Size = new System.Drawing.Size(51, 16);
+ this.label7.Size = new System.Drawing.Size(50, 16);
this.label7.TabIndex = 14;
this.label7.Text = "Distinct";
//
@@ -190,7 +190,7 @@ private void InitializeComponent()
this.label8.Location = new System.Drawing.Point(33, 323);
this.label8.Margin = new System.Windows.Forms.Padding(4, 0, 4, 0);
this.label8.Name = "label8";
- this.label8.Size = new System.Drawing.Size(75, 16);
+ this.label8.Size = new System.Drawing.Size(74, 16);
this.label8.TabIndex = 16;
this.label8.Text = "Active Only";
//
@@ -213,7 +213,7 @@ private void InitializeComponent()
this.label9.Location = new System.Drawing.Point(33, 352);
this.label9.Margin = new System.Windows.Forms.Padding(4, 0, 4, 0);
this.label9.Name = "label9";
- this.label9.Size = new System.Drawing.Size(85, 16);
+ this.label9.Size = new System.Drawing.Size(84, 16);
this.label9.TabIndex = 19;
this.label9.Text = "Max Children";
//
@@ -244,7 +244,7 @@ private void InitializeComponent()
this.linkLabel1.AutoSize = true;
this.linkLabel1.Location = new System.Drawing.Point(136, 45);
this.linkLabel1.Name = "linkLabel1";
- this.linkLabel1.Size = new System.Drawing.Size(162, 16);
+ this.linkLabel1.Size = new System.Drawing.Size(161, 16);
this.linkLabel1.TabIndex = 22;
this.linkLabel1.TabStop = true;
this.linkLabel1.Text = "Documentation Expand 🔗";
@@ -266,7 +266,7 @@ private void InitializeComponent()
this.label11.AutoSize = true;
this.label11.Location = new System.Drawing.Point(33, 403);
this.label11.Name = "label11";
- this.label11.Size = new System.Drawing.Size(46, 16);
+ this.label11.Size = new System.Drawing.Size(45, 16);
this.label11.TabIndex = 36;
this.label11.Text = "Result";
//
@@ -285,7 +285,7 @@ private void InitializeComponent()
this.label12.AutoSize = true;
this.label12.Location = new System.Drawing.Point(32, 244);
this.label12.Name = "label12";
- this.label12.Size = new System.Drawing.Size(85, 16);
+ this.label12.Size = new System.Drawing.Size(84, 16);
this.label12.TabIndex = 39;
this.label12.Text = "Order Revert";
//
@@ -339,6 +339,7 @@ private void InitializeComponent()
this.AutoScaleDimensions = new System.Drawing.SizeF(8F, 16F);
this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
this.BackColor = System.Drawing.SystemColors.Window;
+ this.CancelButton = this.button2;
this.ClientSize = new System.Drawing.Size(575, 503);
this.Controls.Add(this.label12);
this.Controls.Add(this.chkOrderSel);
diff --git a/XRMTokensRun/GetIif.Designer.cs b/XRMTokensRun/GetIif.Designer.cs
index d4e53c7..5dd04dd 100644
--- a/XRMTokensRun/GetIif.Designer.cs
+++ b/XRMTokensRun/GetIif.Designer.cs
@@ -70,7 +70,7 @@ private void InitializeComponent()
this.label1.Location = new System.Drawing.Point(33, 91);
this.label1.Margin = new System.Windows.Forms.Padding(4, 0, 4, 0);
this.label1.Name = "label1";
- this.label1.Size = new System.Drawing.Size(53, 16);
+ this.label1.Size = new System.Drawing.Size(52, 16);
this.label1.TabIndex = 2;
this.label1.Text = "Value 1";
//
@@ -92,7 +92,7 @@ private void InitializeComponent()
this.label4.Location = new System.Drawing.Point(33, 150);
this.label4.Margin = new System.Windows.Forms.Padding(4, 0, 4, 0);
this.label4.Name = "label4";
- this.label4.Size = new System.Drawing.Size(53, 16);
+ this.label4.Size = new System.Drawing.Size(52, 16);
this.label4.TabIndex = 11;
this.label4.Text = "Value 2";
//
@@ -101,7 +101,7 @@ private void InitializeComponent()
this.linkLabel1.AutoSize = true;
this.linkLabel1.Location = new System.Drawing.Point(138, 46);
this.linkLabel1.Name = "linkLabel1";
- this.linkLabel1.Size = new System.Drawing.Size(146, 16);
+ this.linkLabel1.Size = new System.Drawing.Size(145, 16);
this.linkLabel1.TabIndex = 24;
this.linkLabel1.TabStop = true;
this.linkLabel1.Text = "Documentation Column";
@@ -124,7 +124,7 @@ private void InitializeComponent()
this.label3.Location = new System.Drawing.Point(33, 121);
this.label3.Margin = new System.Windows.Forms.Padding(4, 0, 4, 0);
this.label3.Name = "label3";
- this.label3.Size = new System.Drawing.Size(61, 16);
+ this.label3.Size = new System.Drawing.Size(60, 16);
this.label3.TabIndex = 26;
this.label3.Text = "Operator";
//
@@ -138,6 +138,7 @@ private void InitializeComponent()
//
// btnValue1
//
+ this.btnValue1.DialogResult = System.Windows.Forms.DialogResult.Cancel;
this.btnValue1.Location = new System.Drawing.Point(490, 88);
this.btnValue1.Name = "btnValue1";
this.btnValue1.Size = new System.Drawing.Size(49, 23);
@@ -165,6 +166,7 @@ private void InitializeComponent()
//
// btnValue2
//
+ this.btnValue2.DialogResult = System.Windows.Forms.DialogResult.Cancel;
this.btnValue2.Location = new System.Drawing.Point(490, 147);
this.btnValue2.Name = "btnValue2";
this.btnValue2.Size = new System.Drawing.Size(49, 23);
@@ -186,12 +188,13 @@ private void InitializeComponent()
this.label2.AutoSize = true;
this.label2.Location = new System.Drawing.Point(33, 196);
this.label2.Name = "label2";
- this.label2.Size = new System.Drawing.Size(72, 16);
+ this.label2.Size = new System.Drawing.Size(71, 16);
this.label2.TabIndex = 32;
this.label2.Text = "True-result";
//
// btnTrue
//
+ this.btnTrue.DialogResult = System.Windows.Forms.DialogResult.Cancel;
this.btnTrue.Location = new System.Drawing.Point(490, 193);
this.btnTrue.Name = "btnTrue";
this.btnTrue.Size = new System.Drawing.Size(49, 23);
@@ -210,6 +213,7 @@ private void InitializeComponent()
//
// btnFalse
//
+ this.btnFalse.DialogResult = System.Windows.Forms.DialogResult.Cancel;
this.btnFalse.Location = new System.Drawing.Point(490, 221);
this.btnFalse.Name = "btnFalse";
this.btnFalse.Size = new System.Drawing.Size(49, 23);
@@ -231,7 +235,7 @@ private void InitializeComponent()
this.label5.AutoSize = true;
this.label5.Location = new System.Drawing.Point(33, 224);
this.label5.Name = "label5";
- this.label5.Size = new System.Drawing.Size(78, 16);
+ this.label5.Size = new System.Drawing.Size(77, 16);
this.label5.TabIndex = 37;
this.label5.Text = "False-result";
//
@@ -251,7 +255,7 @@ private void InitializeComponent()
this.label11.AutoSize = true;
this.label11.Location = new System.Drawing.Point(35, 280);
this.label11.Name = "label11";
- this.label11.Size = new System.Drawing.Size(46, 16);
+ this.label11.Size = new System.Drawing.Size(45, 16);
this.label11.TabIndex = 38;
this.label11.Text = "Result";
//
@@ -261,6 +265,7 @@ private void InitializeComponent()
this.AutoScaleDimensions = new System.Drawing.SizeF(8F, 16F);
this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
this.BackColor = System.Drawing.SystemColors.Window;
+ this.CancelButton = this.button2;
this.ClientSize = new System.Drawing.Size(575, 390);
this.Controls.Add(this.txtResult);
this.Controls.Add(this.label11);
diff --git a/XRMTokensRun/GetPowerFx.Designer.cs b/XRMTokensRun/GetPowerFx.Designer.cs
new file mode 100644
index 0000000..e1aa6e0
--- /dev/null
+++ b/XRMTokensRun/GetPowerFx.Designer.cs
@@ -0,0 +1,192 @@
+
+namespace XRMTokensRun
+{
+ partial class GetPowerFx
+ {
+ ///
+ /// Required designer variable.
+ ///
+ private System.ComponentModel.IContainer components = null;
+
+ ///
+ /// Clean up any resources being used.
+ ///
+ /// true if managed resources should be disposed; otherwise, false.
+ protected override void Dispose(bool disposing)
+ {
+ if (disposing && (components != null))
+ {
+ components.Dispose();
+ }
+ base.Dispose(disposing);
+ }
+
+ #region Windows Form Designer generated code
+
+ ///
+ /// Required method for Designer support - do not modify
+ /// the contents of this method with the code editor.
+ ///
+ private void InitializeComponent()
+ {
+ System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(GetPowerFx));
+ this.button1 = new System.Windows.Forms.Button();
+ this.button2 = new System.Windows.Forms.Button();
+ this.label4 = new System.Windows.Forms.Label();
+ this.linkLabel1 = new System.Windows.Forms.LinkLabel();
+ this.label10 = new System.Windows.Forms.Label();
+ this.btnCol = new System.Windows.Forms.Button();
+ this.txtFormat = new System.Windows.Forms.TextBox();
+ this.label1 = new System.Windows.Forms.Label();
+ this.txtResult = new System.Windows.Forms.TextBox();
+ this.linkLabel2 = new System.Windows.Forms.LinkLabel();
+ this.SuspendLayout();
+ //
+ // button1
+ //
+ this.button1.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Left)));
+ this.button1.DialogResult = System.Windows.Forms.DialogResult.OK;
+ this.button1.Location = new System.Drawing.Point(138, 208);
+ this.button1.Margin = new System.Windows.Forms.Padding(3, 2, 3, 2);
+ this.button1.Name = "button1";
+ this.button1.Size = new System.Drawing.Size(115, 28);
+ this.button1.TabIndex = 1;
+ this.button1.Text = "OK";
+ this.button1.UseVisualStyleBackColor = true;
+ //
+ // button2
+ //
+ this.button2.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Left)));
+ this.button2.DialogResult = System.Windows.Forms.DialogResult.Cancel;
+ this.button2.Location = new System.Drawing.Point(272, 208);
+ this.button2.Margin = new System.Windows.Forms.Padding(3, 2, 3, 2);
+ this.button2.Name = "button2";
+ this.button2.Size = new System.Drawing.Size(115, 28);
+ this.button2.TabIndex = 3;
+ this.button2.Text = "Cancel";
+ this.button2.UseVisualStyleBackColor = true;
+ //
+ // label4
+ //
+ this.label4.AutoSize = true;
+ this.label4.Location = new System.Drawing.Point(33, 92);
+ this.label4.Margin = new System.Windows.Forms.Padding(4, 0, 4, 0);
+ this.label4.Name = "label4";
+ this.label4.Size = new System.Drawing.Size(56, 16);
+ this.label4.TabIndex = 11;
+ this.label4.Text = "Formula";
+ //
+ // linkLabel1
+ //
+ this.linkLabel1.AutoSize = true;
+ this.linkLabel1.Location = new System.Drawing.Point(138, 46);
+ this.linkLabel1.Name = "linkLabel1";
+ this.linkLabel1.Size = new System.Drawing.Size(155, 16);
+ this.linkLabel1.TabIndex = 24;
+ this.linkLabel1.TabStop = true;
+ this.linkLabel1.Text = "Documentation Power Fx";
+ this.linkLabel1.LinkClicked += new System.Windows.Forms.LinkLabelLinkClickedEventHandler(this.linkLabel1_LinkClicked);
+ //
+ // label10
+ //
+ this.label10.AutoSize = true;
+ this.label10.Font = new System.Drawing.Font("Microsoft Sans Serif", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
+ this.label10.Location = new System.Drawing.Point(134, 22);
+ this.label10.Margin = new System.Windows.Forms.Padding(4, 0, 4, 0);
+ this.label10.Name = "label10";
+ this.label10.Size = new System.Drawing.Size(82, 20);
+ this.label10.TabIndex = 23;
+ this.label10.Text = "Power Fx";
+ //
+ // btnCol
+ //
+ this.btnCol.Location = new System.Drawing.Point(490, 89);
+ this.btnCol.Name = "btnCol";
+ this.btnCol.Size = new System.Drawing.Size(49, 65);
+ this.btnCol.TabIndex = 1;
+ this.btnCol.Text = "Add Col";
+ this.btnCol.UseVisualStyleBackColor = true;
+ this.btnCol.Click += new System.EventHandler(this.btnCol_Click);
+ //
+ // txtFormat
+ //
+ this.txtFormat.Location = new System.Drawing.Point(138, 89);
+ this.txtFormat.Multiline = true;
+ this.txtFormat.Name = "txtFormat";
+ this.txtFormat.ScrollBars = System.Windows.Forms.ScrollBars.Vertical;
+ this.txtFormat.Size = new System.Drawing.Size(346, 65);
+ this.txtFormat.TabIndex = 0;
+ this.txtFormat.TextChanged += new System.EventHandler(this.ShowResult);
+ //
+ // label1
+ //
+ this.label1.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Left)));
+ this.label1.AutoSize = true;
+ this.label1.Location = new System.Drawing.Point(33, 178);
+ this.label1.Name = "label1";
+ this.label1.Size = new System.Drawing.Size(45, 16);
+ this.label1.TabIndex = 32;
+ this.label1.Text = "Result";
+ //
+ // txtResult
+ //
+ this.txtResult.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Left)));
+ this.txtResult.Location = new System.Drawing.Point(138, 175);
+ this.txtResult.Name = "txtResult";
+ this.txtResult.ReadOnly = true;
+ this.txtResult.Size = new System.Drawing.Size(346, 22);
+ this.txtResult.TabIndex = 33;
+ //
+ // linkLabel2
+ //
+ this.linkLabel2.AutoSize = true;
+ this.linkLabel2.Location = new System.Drawing.Point(388, 46);
+ this.linkLabel2.Name = "linkLabel2";
+ this.linkLabel2.Size = new System.Drawing.Size(96, 16);
+ this.linkLabel2.TabIndex = 34;
+ this.linkLabel2.TabStop = true;
+ this.linkLabel2.Text = "Microsoft Docs";
+ this.linkLabel2.LinkClicked += new System.Windows.Forms.LinkLabelLinkClickedEventHandler(this.linkLabel2_LinkClicked);
+ //
+ // GetPowerFx
+ //
+ this.AutoScaleDimensions = new System.Drawing.SizeF(8F, 16F);
+ this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
+ this.BackColor = System.Drawing.SystemColors.Window;
+ this.CancelButton = this.button2;
+ this.ClientSize = new System.Drawing.Size(575, 247);
+ this.Controls.Add(this.linkLabel2);
+ this.Controls.Add(this.txtResult);
+ this.Controls.Add(this.label1);
+ this.Controls.Add(this.btnCol);
+ this.Controls.Add(this.txtFormat);
+ this.Controls.Add(this.linkLabel1);
+ this.Controls.Add(this.label10);
+ this.Controls.Add(this.label4);
+ this.Controls.Add(this.button2);
+ this.Controls.Add(this.button1);
+ this.Font = new System.Drawing.Font("Microsoft Sans Serif", 9.75F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
+ this.FormBorderStyle = System.Windows.Forms.FormBorderStyle.FixedSingle;
+ this.Icon = ((System.Drawing.Icon)(resources.GetObject("$this.Icon")));
+ this.Margin = new System.Windows.Forms.Padding(3, 2, 3, 2);
+ this.Name = "GetPowerFx";
+ this.StartPosition = System.Windows.Forms.FormStartPosition.CenterParent;
+ this.Text = "Get Power Fx Formula";
+ this.ResumeLayout(false);
+ this.PerformLayout();
+
+ }
+
+ #endregion
+ private System.Windows.Forms.Button button1;
+ private System.Windows.Forms.Button button2;
+ private System.Windows.Forms.Label label4;
+ private System.Windows.Forms.LinkLabel linkLabel1;
+ private System.Windows.Forms.Label label10;
+ private System.Windows.Forms.Button btnCol;
+ private System.Windows.Forms.TextBox txtFormat;
+ private System.Windows.Forms.Label label1;
+ private System.Windows.Forms.TextBox txtResult;
+ private System.Windows.Forms.LinkLabel linkLabel2;
+ }
+}
\ No newline at end of file
diff --git a/XRMTokensRun/GetPowerFx.cs b/XRMTokensRun/GetPowerFx.cs
new file mode 100644
index 0000000..9f6e6ac
--- /dev/null
+++ b/XRMTokensRun/GetPowerFx.cs
@@ -0,0 +1,56 @@
+using Rappen.XRM.Helpers.Extensions;
+using System.Diagnostics;
+using System.Windows.Forms;
+
+namespace XRMTokensRun
+{
+ public partial class GetPowerFx : Form
+ {
+ private XRMTR xrmtr;
+
+ public GetPowerFx()
+ {
+ InitializeComponent();
+ }
+
+ public static string ShowDialog(XRMTR owner)
+ {
+ var dialog = new GetPowerFx();
+ dialog.xrmtr = owner;
+ if (dialog.ShowDialog((Control)owner) == DialogResult.OK)
+ {
+ return dialog.GetResult();
+ }
+ return null;
+ }
+
+ private string GetResult()
+ {
+ return "";
+ }
+
+ private void linkLabel1_LinkClicked(object sender, LinkLabelLinkClickedEventArgs e)
+ {
+ Process.Start("https://jonasr.app/xrm-tokens/#powerfx");
+ }
+
+ private void btnCol_Click(object sender, System.EventArgs e)
+ {
+ if (GetAttribute.ShowDialog(xrmtr, xrmtr.recordmeta) is string val && !string.IsNullOrEmpty(val))
+ {
+ XRMTR.InsertValue(txtFormat, val);
+ }
+ ShowResult();
+ }
+
+ private void ShowResult(object sender = null, System.EventArgs e = null)
+ {
+ txtResult.Text = GetResult();
+ }
+
+ private void linkLabel2_LinkClicked(object sender, LinkLabelLinkClickedEventArgs e)
+ {
+ Process.Start("https://learn.microsoft.com/en-us/power-platform/power-fx/formula-reference?WT.mc_id=BA-MVP-5002475");
+ }
+ }
+}
\ No newline at end of file
diff --git a/XRMTokensRun/GetPowerFx.resx b/XRMTokensRun/GetPowerFx.resx
new file mode 100644
index 0000000..03eec8e
--- /dev/null
+++ b/XRMTokensRun/GetPowerFx.resx
@@ -0,0 +1,149 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ text/microsoft-resx
+
+
+ 2.0
+
+
+ System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
+
+ System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
+
+
+
+ AAABAAEAEBAAAAEACABoBQAAFgAAACgAAAAQAAAAIAAAAAEACAAAAAAAAAAAAEUAAABFAAAAAAEAAAAA
+ AADAwMAA9+/vAN61pQDOhFoAxnNCAN61nAD37+cA3r2lAMZaGADeUgAA92MAAP9jAADnUgAA1qWEANZS
+ AADWnHMA3r2tALWUSgBKzrUAjKVzAIStewC9jEIAY8acAN5zIQBSzq0AQta9AJycYwDGWhAAa72UAJSl
+ YwCtlFIAMd7OANZ7KQClnFoASs6tALWMQgDnWgAA3q2UAM6MYwBztYwAOd7GACnn1gCMpWsAxntSAJSl
+ awBaxqUA53MYAO9rEADOazEAhK1zAM6EMQAx3sYAEPfnAGu9jADGhDkAxoQxAELWtQDWrYwAe7WEAMZS
+ EADOeykA1px7AM6UawAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAPz8/PwECAwQEAwUGPz8/Pz8/PwcICQoLCwoMCAU/Pz8/Pw0OCgsLCwsLCwsODz8/PxAOCwsL
+ CwsLCwsLCw4FPwEIERITFBULFhcKGBkaGwYCCRwdCxgeCx8gISIjEiQlJgohJwoWHgsZKCkcKhQKKwQK
+ FiwLLSMLKC4LKRoSLzAEChgaFRkxMjMeHjQREi8wJgohHCcUFBoTNSc2KhQKKwUJHB03IRM2ExMqFRU4
+ JDkBCCEoFCgVFDoiLBgoKjsGPwIOCzI8Gh0eIxcyCwk5Pz8/PQ4KCwsLCwsLCw4+Pz8/Pz8FCCQKCwsK
+ JDslPz8/Pz8/AQE5KzAwKzkGPz8/AfAPAADgBwAAwAMAAIABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAIABAADAAwAA4AcAAOAOAAA=
+
+
+
\ No newline at end of file
diff --git a/XRMTokensRun/GetRandom.Designer.cs b/XRMTokensRun/GetRandom.Designer.cs
index b290f61..e1c500f 100644
--- a/XRMTokensRun/GetRandom.Designer.cs
+++ b/XRMTokensRun/GetRandom.Designer.cs
@@ -178,6 +178,7 @@ private void InitializeComponent()
this.AutoScaleDimensions = new System.Drawing.SizeF(8F, 16F);
this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
this.BackColor = System.Drawing.SystemColors.Window;
+ this.CancelButton = this.button2;
this.ClientSize = new System.Drawing.Size(575, 276);
this.Controls.Add(this.txtParam2);
this.Controls.Add(this.lblParam2);
diff --git a/XRMTokensRun/GetRandom.cs b/XRMTokensRun/GetRandom.cs
index 0a591be..975c3c5 100644
--- a/XRMTokensRun/GetRandom.cs
+++ b/XRMTokensRun/GetRandom.cs
@@ -1,5 +1,4 @@
-using Rappen.XRM.Helpers.Extensions;
-using System.Diagnostics;
+using System.Diagnostics;
using System.Windows.Forms;
namespace XRMTokensRun
diff --git a/XRMTokensRun/GetSystem.Designer.cs b/XRMTokensRun/GetSystem.Designer.cs
index d55a130..b7f719c 100644
--- a/XRMTokensRun/GetSystem.Designer.cs
+++ b/XRMTokensRun/GetSystem.Designer.cs
@@ -73,7 +73,7 @@ private void InitializeComponent()
this.label4.Location = new System.Drawing.Point(33, 121);
this.label4.Margin = new System.Windows.Forms.Padding(4, 0, 4, 0);
this.label4.Name = "label4";
- this.label4.Size = new System.Drawing.Size(50, 16);
+ this.label4.Size = new System.Drawing.Size(49, 16);
this.label4.TabIndex = 11;
this.label4.Text = "Format";
//
@@ -82,7 +82,7 @@ private void InitializeComponent()
this.linkLabel1.AutoSize = true;
this.linkLabel1.Location = new System.Drawing.Point(138, 46);
this.linkLabel1.Name = "linkLabel1";
- this.linkLabel1.Size = new System.Drawing.Size(146, 16);
+ this.linkLabel1.Size = new System.Drawing.Size(145, 16);
this.linkLabel1.TabIndex = 24;
this.linkLabel1.TabStop = true;
this.linkLabel1.Text = "Documentation Column";
@@ -105,7 +105,7 @@ private void InitializeComponent()
this.label3.Location = new System.Drawing.Point(33, 92);
this.label3.Margin = new System.Windows.Forms.Padding(4, 0, 4, 0);
this.label3.Name = "label3";
- this.label3.Size = new System.Drawing.Size(61, 16);
+ this.label3.Size = new System.Drawing.Size(60, 16);
this.label3.TabIndex = 26;
this.label3.Text = "Operator";
//
@@ -126,6 +126,7 @@ private void InitializeComponent()
//
// btnCol
//
+ this.btnCol.DialogResult = System.Windows.Forms.DialogResult.Cancel;
this.btnCol.Location = new System.Drawing.Point(490, 118);
this.btnCol.Name = "btnCol";
this.btnCol.Size = new System.Drawing.Size(49, 23);
@@ -149,7 +150,7 @@ private void InitializeComponent()
this.label1.AutoSize = true;
this.label1.Location = new System.Drawing.Point(33, 178);
this.label1.Name = "label1";
- this.label1.Size = new System.Drawing.Size(46, 16);
+ this.label1.Size = new System.Drawing.Size(45, 16);
this.label1.TabIndex = 32;
this.label1.Text = "Result";
//
@@ -168,6 +169,7 @@ private void InitializeComponent()
this.AutoScaleDimensions = new System.Drawing.SizeF(8F, 16F);
this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
this.BackColor = System.Drawing.SystemColors.Window;
+ this.CancelButton = this.button2;
this.ClientSize = new System.Drawing.Size(575, 247);
this.Controls.Add(this.txtResult);
this.Controls.Add(this.label1);
diff --git a/XRMTokensRun/GetSystem.cs b/XRMTokensRun/GetSystem.cs
index 47ed310..97f2eb2 100644
--- a/XRMTokensRun/GetSystem.cs
+++ b/XRMTokensRun/GetSystem.cs
@@ -1,8 +1,5 @@
-using Microsoft.Xrm.Sdk.Metadata;
-using Rappen.XRM.Helpers.Extensions;
-using System.Collections.Generic;
+using Rappen.XRM.Helpers.Extensions;
using System.Diagnostics;
-using System.Linq;
using System.Windows.Forms;
namespace XRMTokensRun
@@ -48,7 +45,7 @@ private void btnCol_Click(object sender, System.EventArgs e)
{
if (GetAttribute.ShowDialog(xrmtr, xrmtr.Service?.GetEntity("systemuser")) is string val && !string.IsNullOrEmpty(val))
{
- txtFormat.Text = val;
+ XRMTR.InsertValue(txtFormat, val);
}
ShowResult();
}
diff --git a/XRMTokensRun/XRMTR.cs b/XRMTokensRun/XRMTR.cs
index 3e99ce2..d4bb716 100644
--- a/XRMTokensRun/XRMTR.cs
+++ b/XRMTokensRun/XRMTR.cs
@@ -2,8 +2,8 @@
using Microsoft.Xrm.Sdk;
using Microsoft.Xrm.Sdk.Metadata;
using Microsoft.Xrm.Sdk.Query;
-using Rappen.XRM.Helpers;
using Rappen.XRM.Helpers.Extensions;
+using Rappen.XRM.Tokens;
using Rappen.XTB.Helpers.Controls;
using System;
using System.Collections.Generic;
@@ -48,6 +48,9 @@ public XRMTR()
"EntityLogicalName"
}).ToArray();
+ cmbTokenHelp.Items.Add(" - Power Fx -");
+ cmbTokenHelp.Items.Add(new TokenHelp("PowerFx", "", 9, 7, "Add any formula for Power Fx, including data from Dataverse.", "https://jonasr.app/xrm-tokens/#powerfx"));
+ cmbTokenHelp.Items.Add("");
cmbTokenHelp.Items.Add(" - Data -");
cmbTokenHelp.Items.Add(new TokenHelp("Column", "{column}", 1, 6, "A simple column, of lookup.column", "https://jonasr.app/xrm-tokens/#attribute"));
cmbTokenHelp.Items.Add(new TokenHelp("Column Raw", "{column|}", 1, 6, "Like Column, but always return simlest type.", "https://jonasr.app/xrm-tokens/#raw"));
@@ -178,12 +181,8 @@ private void Enable(bool on)
btnRefresh.Enabled = on && record.Record != null;
btnOpenRecord.Enabled = on && record.Record != null;
gbTokens.Enabled = on && record.Record != null;
- btnAddToken.Enabled = on && record.Record != null && cmbTokenHelp.SelectedItem is TokenHelp;
- btnSmartColumn.Enabled = on && record.Record != null;
- btnSmartExpand.Enabled = on && record.Record != null;
- btnSmartIf.Enabled = on && record.Record != null;
- btnSmartSystem.Enabled = on && record.Record != null;
- btnSmartRandom.Enabled = on && record.Record != null;
+ gbSmart.Enabled = on && record.Record != null;
+ btnAddToken.Enabled = cmbTokenHelp.SelectedItem is TokenHelp;
btnBackTool.Enabled = btnBackTool.Tag != null;
}
@@ -278,10 +277,10 @@ private void Execute()
txtTokensOut.Text = "";
WorkAsync(new WorkAsyncInfo
{
- Message = "Calling Substitute",
+ Message = "Calling XRM Tokens",
Work = (work, arg) =>
{
- arg.Result = record.Record.Substitute(Service, txtTokensIn.Text);
+ arg.Result = record.Record.Tokens(Service, txtTokensIn.Text);
},
PostWorkCallBack = (arg) =>
{
@@ -339,12 +338,17 @@ private void AddSmartToken(string token)
return;
}
cmbTokenHelp.SelectedIndex = -1;
- var selstart = txtTokensIn.SelectionStart;
- txtTokensIn.SelectedText = "";
- txtTokensIn.Text = txtTokensIn.Text.Insert(selstart, token);
- txtTokensIn.SelectionStart = selstart;
- txtTokensIn.SelectionLength = token.Length;
- txtTokensIn.Focus();
+ InsertValue(txtTokensIn, token);
+ }
+
+ internal static void InsertValue(TextBox textbox, string value)
+ {
+ var selstart = textbox.SelectionStart;
+ textbox.SelectedText = "";
+ textbox.Text = textbox.Text.Insert(selstart, value);
+ textbox.SelectionStart = selstart;
+ textbox.SelectionLength = value.Length;
+ textbox.Focus();
}
private void cmbTokenHelp_SelectedIndexChanged(object sender, EventArgs e)
@@ -370,6 +374,11 @@ private void linkHelp_LinkClicked(object sender, LinkLabelLinkClickedEventArgs e
}
}
+ private void btnSmartPowerFx_Click(object sender, EventArgs e)
+ {
+ AddSmartToken(GetPowerFx.ShowDialog(this));
+ }
+
private void btnSmartColumn_Click(object sender, EventArgs e)
{
AddSmartToken(GetAttribute.ShowDialog(this));
@@ -536,7 +545,9 @@ private void btnOpenRecord_Click(object sender, EventArgs e)
private void btnRefresh_Click(object sender, EventArgs e)
{
- LoadRecord(record.Record?.ToEntityReference());
+ var recref = record.Record.ToEntityReference();
+ record.Record = null;
+ LoadRecord(recref);
}
}
}
\ No newline at end of file
diff --git a/XRMTokensRun/XRMTR.designer.cs b/XRMTokensRun/XRMTR.designer.cs
index 3d460c7..19a36f8 100644
--- a/XRMTokensRun/XRMTR.designer.cs
+++ b/XRMTokensRun/XRMTR.designer.cs
@@ -37,9 +37,14 @@ private void InitializeComponent()
this.btnBackTool = new System.Windows.Forms.ToolStripButton();
this.tslAbout = new System.Windows.Forms.ToolStripLabel();
this.gbGetRecord = new System.Windows.Forms.GroupBox();
+ this.btnRefresh = new System.Windows.Forms.Button();
+ this.btnOpenRecord = new System.Windows.Forms.Button();
this.btnGetRecord = new System.Windows.Forms.Button();
this.label2 = new System.Windows.Forms.Label();
+ this.cmbTable = new Rappen.XTB.Helpers.Controls.XRMEntityComboBox();
this.label1 = new System.Windows.Forms.Label();
+ this.recordname = new Rappen.XTB.Helpers.Controls.XRMColumnText();
+ this.record = new Rappen.XTB.Helpers.Controls.XRMRecordHost();
this.splitContainer2 = new System.Windows.Forms.SplitContainer();
this.gbTokens = new System.Windows.Forms.GroupBox();
this.btnSave = new System.Windows.Forms.Button();
@@ -47,6 +52,7 @@ private void InitializeComponent()
this.label3 = new System.Windows.Forms.Label();
this.txtTokensIn = new System.Windows.Forms.TextBox();
this.gbSmart = new System.Windows.Forms.GroupBox();
+ this.button1 = new System.Windows.Forms.Button();
this.btnSmartRandom = new System.Windows.Forms.Button();
this.btnSmartSystem = new System.Windows.Forms.Button();
this.btnSmartIf = new System.Windows.Forms.Button();
@@ -57,14 +63,9 @@ private void InitializeComponent()
this.btnSmartColumn = new System.Windows.Forms.Button();
this.cmbTokenHelp = new System.Windows.Forms.ComboBox();
this.gbTokenResult = new System.Windows.Forms.GroupBox();
- this.lblError = new System.Windows.Forms.Label();
+ this.lblError = new System.Windows.Forms.TextBox();
this.txtTokensOut = new System.Windows.Forms.TextBox();
this.timer1 = new System.Windows.Forms.Timer(this.components);
- this.btnOpenRecord = new System.Windows.Forms.Button();
- this.btnRefresh = new System.Windows.Forms.Button();
- this.cmbTable = new Rappen.XTB.Helpers.Controls.XRMEntityComboBox();
- this.recordname = new Rappen.XTB.Helpers.Controls.XRMColumnText();
- this.record = new Rappen.XTB.Helpers.Controls.XRMRecordHost();
this.tt = new System.Windows.Forms.ToolTip(this.components);
this.toolStripMenu.SuspendLayout();
this.gbGetRecord.SuspendLayout();
@@ -141,22 +142,49 @@ private void InitializeComponent()
this.gbGetRecord.Location = new System.Drawing.Point(0, 4);
this.gbGetRecord.Name = "gbGetRecord";
this.gbGetRecord.Size = new System.Drawing.Size(997, 106);
- this.gbGetRecord.TabIndex = 9;
+ this.gbGetRecord.TabIndex = 1;
this.gbGetRecord.TabStop = false;
this.gbGetRecord.Text = "Get Record";
//
+ // btnRefresh
+ //
+ this.btnRefresh.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Right)));
+ this.btnRefresh.BackColor = System.Drawing.SystemColors.Window;
+ this.btnRefresh.Image = ((System.Drawing.Image)(resources.GetObject("btnRefresh.Image")));
+ this.btnRefresh.Location = new System.Drawing.Point(776, 53);
+ this.btnRefresh.Name = "btnRefresh";
+ this.btnRefresh.Size = new System.Drawing.Size(37, 33);
+ this.btnRefresh.TabIndex = 7;
+ this.tt.SetToolTip(this.btnRefresh, "Refresh selected record - useful if record has changed.");
+ this.btnRefresh.UseVisualStyleBackColor = false;
+ this.btnRefresh.Click += new System.EventHandler(this.btnRefresh_Click);
+ //
+ // btnOpenRecord
+ //
+ this.btnOpenRecord.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Right)));
+ this.btnOpenRecord.BackColor = System.Drawing.SystemColors.Window;
+ this.btnOpenRecord.Image = ((System.Drawing.Image)(resources.GetObject("btnOpenRecord.Image")));
+ this.btnOpenRecord.Location = new System.Drawing.Point(819, 53);
+ this.btnOpenRecord.Name = "btnOpenRecord";
+ this.btnOpenRecord.Size = new System.Drawing.Size(37, 33);
+ this.btnOpenRecord.TabIndex = 8;
+ this.tt.SetToolTip(this.btnOpenRecord, "Open this record in the browser.");
+ this.btnOpenRecord.UseVisualStyleBackColor = false;
+ this.btnOpenRecord.Click += new System.EventHandler(this.btnOpenRecord_Click);
+ //
// btnGetRecord
//
this.btnGetRecord.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Right)));
+ this.btnGetRecord.BackColor = System.Drawing.SystemColors.Window;
this.btnGetRecord.Image = ((System.Drawing.Image)(resources.GetObject("btnGetRecord.Image")));
this.btnGetRecord.ImageAlign = System.Drawing.ContentAlignment.MiddleLeft;
this.btnGetRecord.Location = new System.Drawing.Point(862, 53);
this.btnGetRecord.Name = "btnGetRecord";
this.btnGetRecord.Size = new System.Drawing.Size(120, 33);
- this.btnGetRecord.TabIndex = 5;
+ this.btnGetRecord.TabIndex = 10;
this.btnGetRecord.Text = "Lookup...";
this.tt.SetToolTip(this.btnGetRecord, "Choose the record for this table.");
- this.btnGetRecord.UseVisualStyleBackColor = true;
+ this.btnGetRecord.UseVisualStyleBackColor = false;
this.btnGetRecord.Click += new System.EventHandler(this.btnGetRecord_Click);
//
// label2
@@ -169,6 +197,17 @@ private void InitializeComponent()
this.label2.TabIndex = 4;
this.label2.Text = "Record";
//
+ // cmbTable
+ //
+ this.cmbTable.FormattingEnabled = true;
+ this.cmbTable.Location = new System.Drawing.Point(23, 58);
+ this.cmbTable.Margin = new System.Windows.Forms.Padding(4);
+ this.cmbTable.Name = "cmbTable";
+ this.cmbTable.Size = new System.Drawing.Size(375, 24);
+ this.cmbTable.TabIndex = 0;
+ this.cmbTable.SelectedIndexChanged += new System.EventHandler(this.cmbTable_SelectedIndexChanged);
+ this.cmbTable.Leave += new System.EventHandler(this.cmbTable_Leave);
+ //
// label1
//
this.label1.AutoSize = true;
@@ -179,6 +218,28 @@ private void InitializeComponent()
this.label1.TabIndex = 1;
this.label1.Text = "Table";
//
+ // recordname
+ //
+ this.recordname.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left)
+ | System.Windows.Forms.AnchorStyles.Right)));
+ this.recordname.BackColor = System.Drawing.SystemColors.Window;
+ this.recordname.Column = null;
+ this.recordname.DisplayFormat = "";
+ this.recordname.Location = new System.Drawing.Point(425, 58);
+ this.recordname.Margin = new System.Windows.Forms.Padding(4);
+ this.recordname.Name = "recordname";
+ this.recordname.ReadOnly = true;
+ this.recordname.RecordHost = this.record;
+ this.recordname.Size = new System.Drawing.Size(344, 22);
+ this.recordname.TabIndex = 3;
+ //
+ // record
+ //
+ this.record.Id = new System.Guid("00000000-0000-0000-0000-000000000000");
+ this.record.LogicalName = null;
+ this.record.Record = null;
+ this.record.Service = null;
+ //
// splitContainer2
//
this.splitContainer2.Dock = System.Windows.Forms.DockStyle.Fill;
@@ -219,6 +280,7 @@ private void InitializeComponent()
// btnSave
//
this.btnSave.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Right)));
+ this.btnSave.BackColor = System.Drawing.SystemColors.Window;
this.btnSave.Image = ((System.Drawing.Image)(resources.GetObject("btnSave.Image")));
this.btnSave.ImageAlign = System.Drawing.ContentAlignment.MiddleLeft;
this.btnSave.Location = new System.Drawing.Point(862, 26);
@@ -226,12 +288,13 @@ private void InitializeComponent()
this.btnSave.Size = new System.Drawing.Size(120, 33);
this.btnSave.TabIndex = 3;
this.btnSave.Text = "Save";
- this.btnSave.UseVisualStyleBackColor = true;
+ this.btnSave.UseVisualStyleBackColor = false;
this.btnSave.Click += new System.EventHandler(this.btnSave_Click);
//
// btnOpen
//
this.btnOpen.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Right)));
+ this.btnOpen.BackColor = System.Drawing.SystemColors.Window;
this.btnOpen.Image = ((System.Drawing.Image)(resources.GetObject("btnOpen.Image")));
this.btnOpen.ImageAlign = System.Drawing.ContentAlignment.MiddleLeft;
this.btnOpen.Location = new System.Drawing.Point(735, 26);
@@ -239,7 +302,7 @@ private void InitializeComponent()
this.btnOpen.Size = new System.Drawing.Size(120, 33);
this.btnOpen.TabIndex = 2;
this.btnOpen.Text = "Open";
- this.btnOpen.UseVisualStyleBackColor = true;
+ this.btnOpen.UseVisualStyleBackColor = false;
this.btnOpen.Click += new System.EventHandler(this.btnOpen_Click);
//
// label3
@@ -263,12 +326,14 @@ private void InitializeComponent()
this.txtTokensIn.Margin = new System.Windows.Forms.Padding(4);
this.txtTokensIn.Multiline = true;
this.txtTokensIn.Name = "txtTokensIn";
+ this.txtTokensIn.ScrollBars = System.Windows.Forms.ScrollBars.Vertical;
this.txtTokensIn.Size = new System.Drawing.Size(959, 108);
this.txtTokensIn.TabIndex = 1;
this.txtTokensIn.TextChanged += new System.EventHandler(this.txtTokensIn_TextChanged);
//
// gbSmart
//
+ this.gbSmart.Controls.Add(this.button1);
this.gbSmart.Controls.Add(this.btnSmartRandom);
this.gbSmart.Controls.Add(this.btnSmartSystem);
this.gbSmart.Controls.Add(this.btnSmartIf);
@@ -286,48 +351,59 @@ private void InitializeComponent()
this.gbSmart.TabStop = false;
this.gbSmart.Text = "Build XRM Tokens";
//
+ // button1
+ //
+ this.button1.BackColor = System.Drawing.SystemColors.Window;
+ this.button1.Location = new System.Drawing.Point(23, 32);
+ this.button1.Name = "button1";
+ this.button1.Size = new System.Drawing.Size(71, 25);
+ this.button1.TabIndex = 5;
+ this.button1.Text = "Power Fx";
+ this.button1.UseVisualStyleBackColor = false;
+ this.button1.Click += new System.EventHandler(this.btnSmartPowerFx_Click);
+ //
// btnSmartRandom
//
- this.btnSmartRandom.Enabled = false;
- this.btnSmartRandom.Location = new System.Drawing.Point(215, 32);
+ this.btnSmartRandom.BackColor = System.Drawing.SystemColors.Window;
+ this.btnSmartRandom.Location = new System.Drawing.Point(254, 32);
this.btnSmartRandom.Name = "btnSmartRandom";
- this.btnSmartRandom.Size = new System.Drawing.Size(90, 23);
+ this.btnSmartRandom.Size = new System.Drawing.Size(71, 25);
this.btnSmartRandom.TabIndex = 30;
this.btnSmartRandom.Text = "Random";
- this.btnSmartRandom.UseVisualStyleBackColor = true;
+ this.btnSmartRandom.UseVisualStyleBackColor = false;
this.btnSmartRandom.Click += new System.EventHandler(this.btnSmartRandom_Click);
//
// btnSmartSystem
//
- this.btnSmartSystem.Enabled = false;
- this.btnSmartSystem.Location = new System.Drawing.Point(119, 32);
+ this.btnSmartSystem.BackColor = System.Drawing.SystemColors.Window;
+ this.btnSmartSystem.Location = new System.Drawing.Point(177, 32);
this.btnSmartSystem.Name = "btnSmartSystem";
- this.btnSmartSystem.Size = new System.Drawing.Size(90, 23);
+ this.btnSmartSystem.Size = new System.Drawing.Size(71, 25);
this.btnSmartSystem.TabIndex = 20;
this.btnSmartSystem.Text = "System";
- this.btnSmartSystem.UseVisualStyleBackColor = true;
+ this.btnSmartSystem.UseVisualStyleBackColor = false;
this.btnSmartSystem.Click += new System.EventHandler(this.btnSmartSystem_Click);
//
// btnSmartIf
//
- this.btnSmartIf.Enabled = false;
- this.btnSmartIf.Location = new System.Drawing.Point(407, 32);
+ this.btnSmartIf.BackColor = System.Drawing.SystemColors.Window;
+ this.btnSmartIf.Location = new System.Drawing.Point(408, 32);
this.btnSmartIf.Name = "btnSmartIf";
- this.btnSmartIf.Size = new System.Drawing.Size(90, 23);
+ this.btnSmartIf.Size = new System.Drawing.Size(71, 25);
this.btnSmartIf.TabIndex = 50;
this.btnSmartIf.Text = "If";
- this.btnSmartIf.UseVisualStyleBackColor = true;
+ this.btnSmartIf.UseVisualStyleBackColor = false;
this.btnSmartIf.Click += new System.EventHandler(this.btnSmartIf_Click);
//
// btnSmartExpand
//
- this.btnSmartExpand.Enabled = false;
- this.btnSmartExpand.Location = new System.Drawing.Point(311, 32);
+ this.btnSmartExpand.BackColor = System.Drawing.SystemColors.Window;
+ this.btnSmartExpand.Location = new System.Drawing.Point(331, 32);
this.btnSmartExpand.Name = "btnSmartExpand";
- this.btnSmartExpand.Size = new System.Drawing.Size(90, 23);
+ this.btnSmartExpand.Size = new System.Drawing.Size(71, 25);
this.btnSmartExpand.TabIndex = 40;
this.btnSmartExpand.Text = "Expand";
- this.btnSmartExpand.UseVisualStyleBackColor = true;
+ this.btnSmartExpand.UseVisualStyleBackColor = false;
this.btnSmartExpand.Click += new System.EventHandler(this.btnSmartExpand_Click);
//
// linkHelp
@@ -356,29 +432,31 @@ private void InitializeComponent()
// btnAddToken
//
this.btnAddToken.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Right)));
+ this.btnAddToken.BackColor = System.Drawing.SystemColors.Window;
this.btnAddToken.Enabled = false;
- this.btnAddToken.Location = new System.Drawing.Point(862, 32);
+ this.btnAddToken.Location = new System.Drawing.Point(862, 31);
this.btnAddToken.Name = "btnAddToken";
- this.btnAddToken.Size = new System.Drawing.Size(120, 23);
+ this.btnAddToken.Size = new System.Drawing.Size(120, 25);
this.btnAddToken.TabIndex = 70;
this.btnAddToken.Text = "Add Manual";
- this.btnAddToken.UseVisualStyleBackColor = true;
+ this.btnAddToken.UseVisualStyleBackColor = false;
this.btnAddToken.Click += new System.EventHandler(this.btnAddToken_Click);
//
// btnSmartColumn
//
- this.btnSmartColumn.Enabled = false;
- this.btnSmartColumn.Location = new System.Drawing.Point(23, 32);
+ this.btnSmartColumn.BackColor = System.Drawing.SystemColors.Window;
+ this.btnSmartColumn.Location = new System.Drawing.Point(100, 32);
this.btnSmartColumn.Name = "btnSmartColumn";
- this.btnSmartColumn.Size = new System.Drawing.Size(90, 23);
+ this.btnSmartColumn.Size = new System.Drawing.Size(71, 25);
this.btnSmartColumn.TabIndex = 10;
this.btnSmartColumn.Text = "Column";
- this.btnSmartColumn.UseVisualStyleBackColor = true;
+ this.btnSmartColumn.UseVisualStyleBackColor = false;
this.btnSmartColumn.Click += new System.EventHandler(this.btnSmartColumn_Click);
//
// cmbTokenHelp
//
this.cmbTokenHelp.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Right)));
+ this.cmbTokenHelp.BackColor = System.Drawing.SystemColors.Window;
this.cmbTokenHelp.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList;
this.cmbTokenHelp.FormattingEnabled = true;
this.cmbTokenHelp.Location = new System.Drawing.Point(654, 32);
@@ -395,19 +473,22 @@ private void InitializeComponent()
this.gbTokenResult.Location = new System.Drawing.Point(0, 0);
this.gbTokenResult.Name = "gbTokenResult";
this.gbTokenResult.Size = new System.Drawing.Size(997, 205);
- this.gbTokenResult.TabIndex = 4;
+ this.gbTokenResult.TabIndex = 10;
this.gbTokenResult.TabStop = false;
this.gbTokenResult.Text = "Result";
//
// lblError
//
- this.lblError.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Left)));
- this.lblError.AutoSize = true;
- this.lblError.Location = new System.Drawing.Point(26, 177);
+ this.lblError.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Left)
+ | System.Windows.Forms.AnchorStyles.Right)));
+ this.lblError.BackColor = System.Drawing.SystemColors.Window;
+ this.lblError.BorderStyle = System.Windows.Forms.BorderStyle.None;
+ this.lblError.Location = new System.Drawing.Point(23, 177);
+ this.lblError.Multiline = true;
this.lblError.Name = "lblError";
- this.lblError.Size = new System.Drawing.Size(28, 16);
+ this.lblError.ReadOnly = true;
+ this.lblError.Size = new System.Drawing.Size(959, 25);
this.lblError.TabIndex = 4;
- this.lblError.Text = "Info";
//
// txtTokensOut
//
@@ -420,6 +501,7 @@ private void InitializeComponent()
this.txtTokensOut.Multiline = true;
this.txtTokensOut.Name = "txtTokensOut";
this.txtTokensOut.ReadOnly = true;
+ this.txtTokensOut.ScrollBars = System.Windows.Forms.ScrollBars.Vertical;
this.txtTokensOut.Size = new System.Drawing.Size(959, 139);
this.txtTokensOut.TabIndex = 3;
//
@@ -428,63 +510,6 @@ private void InitializeComponent()
this.timer1.Interval = 500;
this.timer1.Tick += new System.EventHandler(this.timer1_Tick);
//
- // btnOpenRecord
- //
- this.btnOpenRecord.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Right)));
- this.btnOpenRecord.Image = ((System.Drawing.Image)(resources.GetObject("btnOpenRecord.Image")));
- this.btnOpenRecord.Location = new System.Drawing.Point(819, 53);
- this.btnOpenRecord.Name = "btnOpenRecord";
- this.btnOpenRecord.Size = new System.Drawing.Size(37, 33);
- this.btnOpenRecord.TabIndex = 6;
- this.tt.SetToolTip(this.btnOpenRecord, "Open this record in the browser.");
- this.btnOpenRecord.UseVisualStyleBackColor = true;
- this.btnOpenRecord.Click += new System.EventHandler(this.btnOpenRecord_Click);
- //
- // btnRefresh
- //
- this.btnRefresh.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Right)));
- this.btnRefresh.Image = ((System.Drawing.Image)(resources.GetObject("btnRefresh.Image")));
- this.btnRefresh.Location = new System.Drawing.Point(776, 53);
- this.btnRefresh.Name = "btnRefresh";
- this.btnRefresh.Size = new System.Drawing.Size(37, 33);
- this.btnRefresh.TabIndex = 7;
- this.tt.SetToolTip(this.btnRefresh, "Refresh selected record - useful if record has changed.");
- this.btnRefresh.UseVisualStyleBackColor = true;
- this.btnRefresh.Click += new System.EventHandler(this.btnRefresh_Click);
- //
- // cmbTable
- //
- this.cmbTable.FormattingEnabled = true;
- this.cmbTable.Location = new System.Drawing.Point(23, 58);
- this.cmbTable.Margin = new System.Windows.Forms.Padding(4);
- this.cmbTable.Name = "cmbTable";
- this.cmbTable.Size = new System.Drawing.Size(375, 24);
- this.cmbTable.TabIndex = 0;
- this.cmbTable.SelectedIndexChanged += new System.EventHandler(this.cmbTable_SelectedIndexChanged);
- this.cmbTable.Leave += new System.EventHandler(this.cmbTable_Leave);
- //
- // recordname
- //
- this.recordname.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left)
- | System.Windows.Forms.AnchorStyles.Right)));
- this.recordname.BackColor = System.Drawing.SystemColors.Window;
- this.recordname.Column = null;
- this.recordname.DisplayFormat = "";
- this.recordname.Location = new System.Drawing.Point(425, 58);
- this.recordname.Margin = new System.Windows.Forms.Padding(4);
- this.recordname.Name = "recordname";
- this.recordname.ReadOnly = true;
- this.recordname.RecordHost = this.record;
- this.recordname.Size = new System.Drawing.Size(344, 22);
- this.recordname.TabIndex = 3;
- //
- // record
- //
- this.record.Id = new System.Guid("00000000-0000-0000-0000-000000000000");
- this.record.LogicalName = null;
- this.record.Record = null;
- this.record.Service = null;
- //
// XRMTR
//
this.AutoScaleDimensions = new System.Drawing.SizeF(8F, 16F);
@@ -539,7 +564,6 @@ private void InitializeComponent()
private System.Windows.Forms.Button btnSmartColumn;
private System.Windows.Forms.LinkLabel linkHelp;
private System.Windows.Forms.Label lblSmart;
- private System.Windows.Forms.Label lblError;
private System.Windows.Forms.Button btnGetRecord;
private System.Windows.Forms.Label label2;
private System.Windows.Forms.Button btnSmartExpand;
@@ -554,5 +578,7 @@ private void InitializeComponent()
private System.Windows.Forms.Button btnOpenRecord;
private System.Windows.Forms.Button btnRefresh;
private System.Windows.Forms.ToolTip tt;
+ private System.Windows.Forms.TextBox lblError;
+ private System.Windows.Forms.Button button1;
}
}
diff --git a/XRMTokensRun/XRMTR.resx b/XRMTokensRun/XRMTR.resx
index 6b54d06..d7e98cf 100644
--- a/XRMTokensRun/XRMTR.resx
+++ b/XRMTokensRun/XRMTR.resx
@@ -189,12 +189,81 @@
d3c+Z3/W2uj1sxAAKwiPyGvjn6Hao8jqsgM8NKQVnqj/hsq81zuIurrfhQC834Q/kOge9rbfXrUVASAT
k+u3T2aiNnqx8c9AGDn458l03UDVvDoRIvqE+wpCfgH10m9c9bwnWz7AMggRGhHVXZuRjiczkOmYte+P
fIjZxxR9AZMB9zPxtGduAAAAAElFTkSuQmCC
+
+
+
+ 395, 18
+
+
+
+ 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
+ AAAASUVORK5CYII=
+
+
+
+
+ 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
+ xNkAAAAASUVORK5CYII=
iVBORw0KGgoAAAANSUhEUgAAABgAAAAYCAYAAADgdz34AAAABGdBTUEAALGPC/xhBQAAAAlwSFlzAAAK
- 6gAACuoBUMzvvgAAAAd0SU1FB9YFFw06O5HnEcoAAAUeSURBVEhLpZZpUFNXGIajtMpW3FoX/kA3ByVj
+ 6QAACukB/XXO0wAAAAd0SU1FB9YFFw06O5HnEcoAAAUeSURBVEhLpZZpUFNXGIajtMpW3FoX/kA3ByVj
qXVcGHCbaksdmcoPFYhLHZe6QG0VpOqwSUIIQSBEKqY2iRYpqFVDDGCJISwKQsUlCUnuvbk3kSwYCDhg
dbqdfieMM/4osdZ35vnD+b73PfPdcw5hPa/c3NzxP1Wd2/C9RPJzaZHQXMjPt3Fzsjoz0tPFHE7yIigJ
AMZ5i19WXV1d756vru4oOfHdSIWi/oHsxn1K2m4kxfUdtkJ5zcOc7Kzfdu7YXhIcHBwK5a+Pdv1HtbW2
@@ -219,6 +288,9 @@
4I/s+5/RS2g8gEPwLw48liAAzFmsfwDbQauyi78sbwAAAABJRU5ErkJggg==
+
+ 220, 18
+
iVBORw0KGgoAAAANSUhEUgAAABgAAAAYCAYAAADgdz34AAAABGdBTUEAALGPC/xhBQAAAAlwSFlzAAAK
@@ -283,78 +355,6 @@
308, 18
-
-
- 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
- xNkAAAAASUVORK5CYII=
-
-
-
- 395, 18
-
-
-
- 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
- AAAASUVORK5CYII=
-
-
-
- 220, 18
-
395, 18
diff --git a/XRMTokensRun/XRMTRinfo.cs b/XRMTokensRun/XRMTRinfo.cs
index a234bf0..2891e4f 100644
--- a/XRMTokensRun/XRMTRinfo.cs
+++ b/XRMTokensRun/XRMTRinfo.cs
@@ -37,7 +37,7 @@ public XRMTRinfo()
{
// If you have external assemblies that you need to load, uncomment the following to
// hook into the event that will fire when an Assembly fails to resolve
- // AppDomain.CurrentDomain.AssemblyResolve += new ResolveEventHandler(AssemblyResolveEventHandler);
+ AppDomain.CurrentDomain.AssemblyResolve += new ResolveEventHandler(AssemblyResolveEventHandler);
}
///
diff --git a/XRMTokensRun/XRMTokensRun.csproj b/XRMTokensRun/XRMTokensRun.csproj
index ada9d60..1acf1fa 100644
--- a/XRMTokensRun/XRMTokensRun.csproj
+++ b/XRMTokensRun/XRMTokensRun.csproj
@@ -1,5 +1,6 @@
+
Debug
AnyCPU
@@ -9,7 +10,7 @@
Library
Properties
Rappen.XTB.XRMTR
- Rappen.XTB.XRMTR
+ Rappen.XTB.XRMTR.unmerged
v4.7.2
512
@@ -33,6 +34,9 @@
4
+
+ ..\packages\ILMerge.3.0.41\tools\net452\ILMerge.exe
+
..\packages\MscrmTools.Xrm.Connection.1.2022.10.54\lib\net462\McTools.Xrm.Connection.dll
@@ -51,6 +55,15 @@
..\packages\Microsoft.IdentityModel.Clients.ActiveDirectory.5.2.9\lib\net45\Microsoft.IdentityModel.Clients.ActiveDirectory.dll
+
+ ..\packages\Microsoft.PowerFx.Core.0.2.3-preview\lib\netstandard2.0\Microsoft.PowerFx.Core.dll
+
+
+ ..\packages\Microsoft.PowerFx.Interpreter.0.2.3-preview\lib\netstandard2.0\Microsoft.PowerFx.Interpreter.dll
+
+
+ ..\packages\Microsoft.PowerFx.Transport.Attributes.0.2.3-preview\lib\netstandard2.0\Microsoft.PowerFx.Transport.Attributes.dll
+
..\packages\Microsoft.CrmSdk.XrmTooling.CoreAssembly.9.1.1.1\lib\net462\Microsoft.Rest.ClientRuntime.dll
@@ -133,6 +146,12 @@
..\packages\System.Buffers.4.5.1\lib\net461\System.Buffers.dll
+
+ ..\packages\System.Collections.Immutable.5.0.0\lib\net461\System.Collections.Immutable.dll
+
+
+ True
+
@@ -161,7 +180,8 @@
True
- ..\packages\System.Runtime.CompilerServices.Unsafe.6.0.0\lib\net461\System.Runtime.CompilerServices.Unsafe.dll
+ False
+ ..\lib\System.Runtime.CompilerServices.Unsafe.dll
..\packages\System.Security.Cryptography.Algorithms.4.3.1\lib\net463\System.Security.Cryptography.Algorithms.dll
@@ -213,7 +233,6 @@
-
@@ -258,6 +277,12 @@
GetRandom.cs
+
+ Form
+
+
+ GetPowerFx.cs
+
Form
@@ -309,6 +334,9 @@
GetRandom.cs
+
+ GetPowerFx.cs
+
GetSystem.cs
@@ -331,15 +359,16 @@
+
-
- IF $(ConfigurationName) == Debug (
- IF NOT EXIST Plugins mkdir Plugins
- xcopy "$(TargetDir)$(TargetFileName)" "$(TargetDir)Plugins\" /Y
- xcopy "$(TargetDir)$(TargetName).pdb" "$(TargetDir)Plugins\" /Y
- )
-
+ ilmerge.exe /target:library /targetplatform:v4,"C:\Windows\Microsoft.NET\Framework\v4.0.30319" "/out:Rappen.XTB.XRMTR.dll" "$(TargetFileName)" "..\..\..\lib\System.Runtime.CompilerServices.Unsafe.dll"
+
+if $(ConfigurationName) == Debug (
+ IF NOT EXIST Plugins mkdir Plugins
+ copy /Y Rappen.XTB.XRMTR.dll Plugins
+)
+
@@ -348,6 +377,7 @@
+