[ { Key => 'Baramundi_GUID', Name => 'Baramundi_GUID', Searchable => 0, Input => { Type => 'Text', Size => 40, MaxLength => 40, # Example for CI attribute syntax check for text and textarea fields #RegEx => '^ABC.*', #RegExErrorMessage => 'Value must start with "ABC"!', }, }, { Key => 'Vendor', Name => 'Vendor', Searchable => 1, Input => { Type => 'Text', Size => 50, MaxLength => 50, # Example for CI attribute syntax check for text and textarea fields #RegEx => '^ABC.*', #RegExErrorMessage => 'Value must start with "ABC"!', }, }, { Key => 'Model', Name => 'Model', Searchable => 1, Input => { Type => 'Text', Size => 50, MaxLength => 50, }, }, { Key => 'Description', Name => 'Description', Searchable => 1, Input => { Type => 'TextArea', }, }, { Key => 'Type', Name => 'Type', Searchable => 1, Input => { Type => 'GeneralCatalog', Class => 'ITSM::ConfigItem::Computer::Type', Translation => 1, }, }, { Key => 'Owner', Name => 'Owner', Searchable => 1, Input => { Type => 'Customer', }, }, { Key => 'SerialNumber', Name => 'Serial Number', Searchable => 1, Input => { Type => 'Text', Size => 50, MaxLength => 100, }, }, { Key => 'Domain', Name => 'Domain', Searchable => 1, Input => { Type => 'Text', Size => 10, MaxLength => 10, }, }, { Key => 'LastUser', Name => 'LastUser', Searchable => 1, Input => { Type => 'Text', Size => 20, MaxLength => 20, }, }, { Key => 'OperatingSystem', Name => 'Operating System', Input => { Type => 'Text', Size => 50, MaxLength => 100, }, }, { Key => 'CPU', Name => 'CPU', Input => { Type => 'Text', Size => 50, MaxLength => 100, }, CountMax => 16, Sub => [ { Key => 'Architecture', Name => 'Architecture', Input => { Type => 'Text', Size => 5, MaxLength => 5, }, }, ], }, { Key => 'Ram', Name => 'Ram', Input => { Type => 'Text', Size => 50, MaxLength => 100, }, CountMax => 10, }, { Key => 'HardDisk', Name => 'Hard Disk', Input => { Type => 'Text', Size => 50, MaxLength => 100, }, CountMax => 10, Sub => [ { Key => 'Capacity', Name => 'Capacity', Input => { Type => 'Text', Size => 20, MaxLength => 10, }, }, ], }, { Key => 'Monitor', Name => 'Monitor', Input => { Type => 'Text', Size => 100, MaxLength => 100, }, }, { Key => 'FQDN', Name => 'FQDN', Searchable => 1, Input => { Type => 'Text', Size => 50, MaxLength => 100, }, }, { Key => 'NIC', Name => 'Network Adapter', Input => { Type => 'Text', Size => 50, MaxLength => 100, Required => 1, }, CountMin => 0, CountMax => 10, CountDefault => 1, Sub => [ { Key => 'IPoverDHCP', Name => 'IP over DHCP', Input => { Type => 'GeneralCatalog', Class => 'ITSM::ConfigItem::YesNo', Translation => 1, Required => 1, }, }, { Key => 'MACAddress', Name => 'MAC Address', Searchable => 1, Input => { Type => 'Text', Size => 20, MaxLength => 20, Required => 0, }, CountMin => 0, CountMax => 20, CountDefault => 0, }, { Key => 'IPAddress', Name => 'IP Address', Searchable => 1, Input => { Type => 'Text', Size => 40, MaxLength => 40, Required => 1, }, CountMin => 0, CountMax => 20, CountDefault => 0, }, ], }, { Key => 'GraphicAdapter', Name => 'Graphic Adapter', Input => { Type => 'Text', Size => 50, MaxLength => 100, }, }, { Key => 'OtherEquipment', Name => 'Other Equipment', Input => { Type => 'TextArea', Required => 1, }, CountMin => 0, CountDefault => 0, }, { Key => 'WarrantyExpirationDate', Name => 'Warranty Expiration Date', Searchable => 1, Input => { Type => 'Date', YearPeriodPast => 20, YearPeriodFuture => 10, }, }, { Key => 'InstallDate', Name => 'Install Date', Searchable => 1, Input => { Type => 'Date', Required => 1, YearPeriodPast => 20, YearPeriodFuture => 10, }, CountMin => 0, CountDefault => 0, }, { Key => 'Note', Name => 'Note', Searchable => 1, Input => { Type => 'TextArea', Required => 1, }, CountMin => 0, CountDefault => 0, }, ];