Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

For a custom lookup style column FX_Currency_RecID (for example on the Sales Order form).

The field will be populated by clicking the lookup button and selecting from currencies on the existing FX_Currency table. The existing form under System Settings > Foreign Exchange > Currencies will be used to maintain the list of foreign currencies for the sales order form.

The end result will look like this on the sales order form:

Image Added

To create the lookup column, complete the following steps:

  1. Create a new C# Plugin called Demo FX Lookup on sales order

    Image Added

  2. Select custom fields tab and select Sales order row under the Modules grid. In the fields grid, enter the Name as  FX_Currency_RecID and choose cell type of Lookup. Press Save.

    Image Added

  3.  Select the Code tab and double click on CustomFieldPlugin to expand the code block.  Paste the following code into the ButtonClicked event:

    Code Block
    titleButtonClicked event
    		if (CustomField.PluginCustomField.Name == "FX_Currency_RecID") 
    		{
    			var Currency = new JiwaFinancials.Jiwa.JiwaApplication.Entities.ForeignExchange.Currency();
    
    			Currency.Search(FormObject.Form);
    			CustomFieldValue.DisplayContents = Currency.ShortName;
    			CustomFieldValue.Contents = Currency.RecID;
    			
    		}


    Note that after JiwaFinancials.Jiwa.JiwaApplication.Entities.<select any existing Jiwa entity>    it is possible to refer to other Jiwa entities instead of Foreign Exchange.  In this example we are using the ForeignExchange.Currency entity.

  4. Paste the following code into the ReadData event:

    Code Block
    titleReadData event
    		if (CustomField.PluginCustomField.Name == "FX_Currency_RecID") 
    		{
    			if (CustomFieldValue.Contents != null && CustomFieldValue.Contents.Trim().Length > 0)
    			{
    				var Currency = new JiwaFinancials.Jiwa.JiwaApplication.Entities.ForeignExchange.Currency();
    				try
    				{
    					Currency.ReadRecord(CustomFieldValue.Contents);
    					CustomFieldValue.DisplayContents = Currency.ShortName;
    				} catch (System.Exception ex)
    				{
    					CustomFieldValue.DisplayContents = "";
    				}
    			}
    			else
    			{
    				CustomFieldValue.DisplayContents = "";
    			}
    		}
    	


    Note that the "FX_Currency_RecID" in the first line is the same as the custom column created in this plugin. 

  5. Press Image Added and you should receive a success message

  6. Check the Image Addedcheckbox

  7. Save the plugin

  8. Exit Jiwa and re-open
  9. Test the plugin by creating a new sales order and selecting a currency in the Custom tab > This Sales Order tab > FX_Currency_RecID lookup