Class: LockstepSdk::CustomFieldSyncModel

Inherits:
Object
  • Object
show all
Defined in:
lib/lockstep_sdk/models/custom_field_sync_model.rb

Overview

The CustomFieldSyncModel represents information coming into Lockstep from an external financial system or other enterprise resource planning system. [Custom Fields](developer.lockstep.io/docs/custom-fields#custom-fields) represent custom data extensions that you can use with the Lockstep Platform. If you need to store extra information about an object that does not match Lockstep’s official schema, you can store it in the Custom Field system using CustomFieldSyncModel.

To store a custom field for an object, create a CustomFieldSyncModel record containing the ‘EntityType` and `ErpKey` of the entity to which you will attach a custom field. Next specify the field’s ‘CustomFieldLabel` and either a `StringValue` or `NumericValue`.

Once imported, this record will be available in the Lockstep API as a [CustomFieldValueModel](developer.lockstep.io/docs/customfieldvaluemodel).

For more information on writing your own connector, see [Connector Data](developer.lockstep.io/docs/connector-data).

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(params = {}) ⇒ CustomFieldSyncModel

Initialize the CustomFieldSyncModel using the provided prototype



39
40
41
42
43
44
45
46
47
48
# File 'lib/lockstep_sdk/models/custom_field_sync_model.rb', line 39

def initialize(params = {})
    @erp_key = params.dig(:erp_key)
    @entity_type = params.dig(:entity_type)
    @custom_field_label = params.dig(:custom_field_label)
    @string_value = params.dig(:string_value)
    @numeric_value = params.dig(:numeric_value)
    @value = params.dig(:value)
    @created = params.dig(:created)
    @modified = params.dig(:modified)
end

Instance Attribute Details

#createdDate-time



76
77
78
# File 'lib/lockstep_sdk/models/custom_field_sync_model.rb', line 76

def created
  @created
end

#custom_field_labelString



60
61
62
# File 'lib/lockstep_sdk/models/custom_field_sync_model.rb', line 60

def custom_field_label
  @custom_field_label
end

#entity_typeString



56
57
58
# File 'lib/lockstep_sdk/models/custom_field_sync_model.rb', line 56

def entity_type
  @entity_type
end

#erp_keyString



52
53
54
# File 'lib/lockstep_sdk/models/custom_field_sync_model.rb', line 52

def erp_key
  @erp_key
end

#modifiedDate-time



80
81
82
# File 'lib/lockstep_sdk/models/custom_field_sync_model.rb', line 80

def modified
  @modified
end

#numeric_valueDouble



68
69
70
# File 'lib/lockstep_sdk/models/custom_field_sync_model.rb', line 68

def numeric_value
  @numeric_value
end

#string_valueString



64
65
66
# File 'lib/lockstep_sdk/models/custom_field_sync_model.rb', line 64

def string_value
  @string_value
end

#valueString



72
73
74
# File 'lib/lockstep_sdk/models/custom_field_sync_model.rb', line 72

def value
  @value
end

Instance Method Details

#as_json(options = {}) ⇒ object



84
85
86
87
88
89
90
91
92
93
94
95
# File 'lib/lockstep_sdk/models/custom_field_sync_model.rb', line 84

def as_json(options={})
    {
        'erpKey' => @erp_key,
        'entityType' => @entity_type,
        'customFieldLabel' => @custom_field_label,
        'stringValue' => @string_value,
        'numericValue' => @numeric_value,
        'value' => @value,
        'created' => @created,
        'modified' => @modified,
    }
end

#to_json(*options) ⇒ String



99
100
101
# File 'lib/lockstep_sdk/models/custom_field_sync_model.rb', line 99

def to_json(*options)
    "[#{as_json(*options).to_json(*options)}]"
end