Skip to content

Instantly share code, notes, and snippets.

@BlueHotDog
Created August 12, 2018 10:21
Show Gist options
  • Save BlueHotDog/1dc9ed0367d8c4f2b3c1c2fb3c436171 to your computer and use it in GitHub Desktop.
Save BlueHotDog/1dc9ed0367d8c4f2b3c1c2fb3c436171 to your computer and use it in GitHub Desktop.
type fieldType =
| Numeric(string)
| Alphanumeric(string)
| Alpha(string);
type fieldData = {
name: string,
width: int,
value: option(fieldType)
};
type field =
| RequiredField(fieldData)
| OptionalField(fieldData)
| BlankField(fieldData);
type requiredField = RequiredField(fieldData)
type entry = {
recordTypeCode: field
};
let fields: entry = {
recordTypeCode: RequiredField({
name: "Record Type Code",
width: 1,
value: Some(Numeric("6"))
})
};
/* {
name: "Transaction Code",
width: 2,
position: 2,
required: true,
fieldType: Numeric,
value: None
}, */
/* {
name: "Receiving DFI Identification",
width: 8,
position: 3,
required: true,
fieldType: Numeric,
value: Some("")
},
{
name: "Check Digit",
width: 1,
position: 4,
required: true,
fieldType: Numeric,
value: Some("")
},
{
name: "DFI Account Number",
width: 17,
position: 5,
required: true,
fieldType: Alphanumeric,
value: Some("")
},
{
name: "Amount",
width: 10,
position: 6,
required: true,
fieldType: Numeric,
value: Some(""),
/* number: true */
},
{
name: "Individual Identification Number",
width: 15,
position: 7,
required: false,
fieldType: Alphanumeric,
value: Some("")
},
{
name: "Individual Name",
width: 22,
position: 8,
required: true,
fieldType: Alphanumeric,
value: Some("")
},
{
name: "Discretionary Data",
width: 2,
position: 9,
required: false,
fieldType: Alphanumeric,
value: Some(""),
},
{
name: "Addenda Record Indicator",
width: 1,
position: 10,
required: true,
fieldType: Numeric,
value: Some("0")
},
{
name: "Trace Number",
width: 15,
position: 11,
required: false,
fieldType: Numeric,
value: Some("")
} */
let setRecordTypeCode = (~entry, ~newValue) => {
let a = entry.recordTypeCode
{...a, value: Some(Numeric("6"))};
};
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment