SugarCRM REST: Difference between revisions

From Starfish ETL
Jump to navigation Jump to search
No edit summary
No edit summary
Line 19: Line 19:
=Mapping=
=Mapping=
==Date Fields==
==Date Fields==
<code>
  Function ScriptedField
Function ScriptedField
    ScriptedField=FormatDate("@@ORG:renewal_date_c@@", "yyyy-MM-dd")
ScriptedField=FormatDate("@@ORG:renewal_date_c@@", "yyyy-MM-dd")
  End Function
End Function
</code>
==Datetime Fields==
==Datetime Fields==
   Function ScriptedField
   Function ScriptedField

Revision as of 20:06, 8 October 2014

SugarCRM REST Origin

Sample Origin Filters

See the GET /<module> filterList in the SugarCRM REST Help: https://SERVER/rest/v10/help/

Note the [{...}] surrounding the filter. This is required.

[{"id":"84b1c05c-1043-05c8-ced8-53a2ed18427b"}]

A more complex filter:

[{"$or":[{"import_source_id_c":{"$not_null":""}},{"import_source_id_c":{"$not_equals":""}}]}]

Note that the $not_null operation still requires a blank string.

Mapping

Date Fields

 Function ScriptedField
   ScriptedField=FormatDate("@@ORG:renewal_date_c@@", "yyyy-MM-dd")
 End Function

Datetime Fields

 Function ScriptedField
   ScriptedField=FormatDate("@@ORG:date_entered@@", "yyyy-MM-ddTHH:mm:ss")
 End Function

VBScript Smart Lookup

When filtering in a smart lookup, the filter must use double-double quotes:

strSugarID = SmartLookup("Accounts","id","[{""import_source_id"":""84b1c05c-1043-05c8-ced8-53a2ed18427b""}]")

Multi-select Dropdowns

Data in Multiselect Dropdowns is stored as a comma separated string with carats around each value: ^Atari^,^Automobiles^,^Baseball^,^Fine_Art^,^Running_Walking^

Sample Function:

 Function ScriptedField
   dim cat 
   cat = "@@ORG:Categories@@"
   dim res
   If InStr(cat,"Board Invitee") Then
     res = res & "^Board_Invitee^,"
   End If
   If InStr(cat,"Priority Contact") Then
     res = res & "^Priority_Contact^,"
   End If
   If InStr(cat,"Dividend Contact") Then
     res = res & "^Dividend_Contact^,"
   End If
   If Right(res,1) = "," Then
     res = Left(res,Len(res)-1)
   End If
   ScriptedField=res
 End Function

Checkbox

When mapping to a checkbox, does it require returning True or some other value? 1?