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.

...

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



  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.



  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)
    				{
    					// pivot no longer exists, just blank it out.
    					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  and you should receive a success message

  6. Check the checkbox

  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 

...