EOL Asset DB – Sys Config

The IT Assets Database was replaced by the IT Admins CMDB and is EOL / End of Life, no further development will be done on this project.

SysConfig will open a configuration table. This is a system configuration table and will influence any open client right away since it is stored in the SQL database.

There are THREE absolute important configuration settings that are highlighted in ORANGE – the rest is a bit more relative and does not need attention right away.

For developers, the Application\Maintenance value might be interesting if you want to roll out updated versions or kick all users out of the system.

Please see the list below for explanation of all the available config values.

  • ParamaterGroup
    • SubParameterGroup
    • Explanation and instructions
  • Application
    • Maintenance
    • If you set this flag to 1 no one will be able to start the database anymore. Any existing open applications will close within about 4 minutes. This actually is to force everyone out. You should not need to change it. You might need to change this back directly in the table, cause the application will not start as long this flag is set.
  • Application
    • ReAttach
    • This flag will force every client to reattach the SQL tables every 2 minutes – you should never need to change this unless you are a developer and do it on purpose. Don’t forget to change it back.
  • Application
    • SubstractHeight
    • This is a subtracted height value for the auto-adjustment of the forms. Most forms will actually adjust to your screen resolution automatically. Still, the system was optimized to 24″ monitors. The Main Menu form is one of the forms that will not auto-adjust. There should not be a need to change this.
  • Application
    • Title
    • This is the title of the database. Change it to your liking, we had names the The Kraken or Hydra for it – in the end it is up to you.
  • LDAPCompare
    • Domains
    • list a DNS like domain name in this field – in theory you can list multiple if you have multiple trusts. For each of those domains there needs to be a new LDAPCompare value like the following
  • LDAPCompare
    • local
    • this is the LDAPCompare value that needs to exist for each domain. If you list e.g. “mydomain.local” under “Domains” you will have the SubParameterGroup adjusted to “mydomain.local” instead of “domain.local” what is the example/default. In the end just change the SubParameterGroup value to the domain-name you listed in LDAPCompare\Domains
    • The ParameterValue should be <servername or domain name>/<OU path> e.g. mydomain.local\DC=mydomain,DC=local
    • The whole configuration is used for comparing what is in the defined OU-Substructure but not in the IT Asset database – see the button LDAP compare in the Main menu.
  • LDAPSync
    • DomainSyncStartDN
    • Put the distinguished name of the OU in your domain for which one users, groups and computer should be monitored. This actually will as well import your employees. E.g.: DC=mydomain,DC=local
  • LDAPSync
    • email_lastsend
    • Clear the parameter to re-send the email – besides that, field will automatically re-populate when the email was send (every 24h) / to disable the email – set date in the far far future like 12/31/2050 11:59:59 PM – this correlates with email_schedule
  • LDAPSync
    • email_recipient
    • recipient address (SMTP) for the LDAP change reports
  • LDAPSync
    • email_schedule
    • this is a TIME value – it determines at what time every 24h the LDAP change report is sent out
  • LDAPSync
    • email_sender
    • this is the FROM address for the LDAP change report
  • LDAPSync
    • email_subject
    • this is the subject line of the LDAP change report email
  • LDAPSync
    • IntervalInMinutes
    • put a number in this field – a good start is 30 – what will cause a new LDAP synchronization every 30 minutes
  • LDAPSync
    • SyncTimeTreshHoldForRemoved
    • this is a threshold value – 15 minutes above the last sync plus interval in the end. The should be no need to change this.
  • Mail
    • AddressSeparator
    • By default commas are searched and replaced in the CC field of emails. Use a , here if you want to keep it or and alternate replace character like a ;
  • Mail
    • AuthPass
    • SMTP mail server – authentification password
  • Mail
    • AuthUser
    • SMTP mail server – authentification user
  • Mail
    • FallBackTo
    • This is the fallback email address if no TO was specified – in some cases
  • Mail
    • FROM
    • This is the default FROM address for any send emails – when there is no alternate from defined
  • Mail
    • SMTPserver
    • SMTP mail server – application will connect on port 25
  • Main
    • ExpensesWarning
    • in days, filter for Expenses coming up soon in Main Menu
  • Main
    • `ServerWarrantyWarning
    • in days, filter for Warranty ending soon in Main Menu
  • MainForm
    • VendorIssuesAssigneeOnly
    • Main Form – Vendor Issues list-box – if “0” then all open Issues will be shown / if <> 0 then only issues assigned to current user will be shown
  • Projects
    • ProjectTasksImport
    • 0 = leaves the button activate so that imports are always possible / <> 0 will disable the button once at list one item is in the list
  • Projects
    • RootPath
    • Root Project folder path – to create new folders
  • Reminder
    • CCHelpdesk
    • This is the CC heldpesk email address
  • RESTvmware
    • DataCenters
    • Comma separated list of host-names of Vmware systems – cluster name or stand-a-lone hostname – use DNS name! – This is used by the VMware compare function, if you want to use it – this is what you need to configure.
  • SQL
    • LogonDomain
    • This is a MUST change value. Put your NetBIOS domain name here – like MYDOMAIN\ including the backslash
  • URL
    • Dell
    • URL for Dell service tags – link/url has a [value] part that will put the ServiceTag instead (replace)
  • URL
    • Helpdesk
    • Helpdesk link – TicketID will be added at the end of the link
  • URL
    • POTracking
    • PO Tracking number – Google search
  • Wiki
    • ContentPath
    • Path where the Wiki content resides
  • Wiki
    • LastCleanup
    • Automatically increasing date – determines the last cleanup in TempPath – you can set a positive date in the far feature to disable the whole cleanup procedure
  • Wiki
    • TempPath
    • Temp path to load/save PDF files for Wiki preview. See Wiki\LastCleanup on how to disable this while setting a future date.
    • This is where temporary .PDF files will be generated. There is a auto-cleanup in the system that will forcefully remove any file in this path that does not have a current Wiki entry. By default, this means any file. Please set a absolute wrong path if you want to avoid this – if the path set here is accessible, the system will try to clean this folder out.
    • Note: If you used the C:\temp\ITAssetsDB\WikiTemp from the ZIP file, nothing should happen. Just be aware that you set this path proper. You can even change it later to a central network location – it just cleans out temp file that are not needed any more.
  • Application
    • ErrorLimit
    • This is an error limit for the users that have the setting NoErrorMessages set – meaning they won”t see a message box – but once this limit is reached they will see a single message box and be kicked out – errors should be still written to the tblErrors.
  • Checklists
    • Script_AlternateUsername
    • Depends on Option Script_AlternateUserOption = 4 / this username will be used instead
  • Checklists
    • Script_AlternateUserOption
    • 1 = use current user / 2 = use current user + Script_AlternateUserSuffix / 3 = user current user + Script_AlternateUserPreffix / 4 = use ScriptAlternateUsername
  • Checklists
    • Script_AlternateUserPreffix
    • Depends on Option Script_AlternateUserOption = 3 / this will be set before the current username e.g.: username = jdoe => admin_jdoe
  • Checklists
    • Script_AlternateUserSuffix
    • Depends on Option Script_AlternateUserOption = 2 / this will be set after the current username e.g.: username = jdoe => jdoe_admin
  • HistoryReport
    • email_lastsend
    • Clear the parameter to re-send the email – besides that, field will automatically re-populate when the email was send (every 24h) / to disable – set date in the far far future like 12/31/2050 11:59:59 PM
  • HistoryReport
    • email_recipient
    • TO Address, comma separate if more then one recipient
  • HistoryReport
    • email_schedule
    • Time of the day (hh:mm AM/PM or 24 hour format) for when the mail should get send out
  • HistoryReport
    • email_sender
    • FROM address field
  • HistoryReport
    • email_subject
    • Subject line of the email
  • Main
    • WorkstationsReplaceInDays
    • in days – for workstations with a ReplaceOn date less then 30 days away or past the current date
  • Workstations
    • ReplaceOnAddMonths
    • number for months to add to purchase date (if set) to set the ReplaceOn field (if empty) on save record event
  • Application
    • DropBoxAutoDropDown
    • 1 = enabled / 0 = disabled – this will cause the dropdown boxes to auto drop down when they get the focus or are clicked on
  • Application
    • Version
    • Application Version number – change only if you make changes
  • Employees
    • NewEmployeeScript
    • Full path to a script that would create a new user – PowerShell script – if not defined, the button for this in EMPLOYEES will not be visible
  • Employees
    • NewEmployeeScriptAlternateUserName
    • Depends on NewEmployeeScriptAlternateUserOption = 4 / this username will be used instead
  • Employees
    • NewEmployeeScriptAlternateUserOption
    • 1 = use current user / 2 = use current user + NewEmployeeScriptAlternateUserSuffix / 3 = user current user + NewEmployeeScriptAlternateUserPreffix / 4 = use NewEmployeeScriptAlternateUserName
  • Employees
    • NewEmployeeScriptAlternateUserPrefix
    • Depends on NewEmployeeScriptAlternateUserOption = 3 / this will be set before the current username e.g.: username = jdoe => admin_jdoe
  • Employees
    • NewEmployeeScriptAlternateUserSuffix
    • Depends on NewEmployeeScriptAlternateUserOption = 2 / this will be set after the current username e.g.: username = jdoe => jdoe_admin
  • Incidents
    • RootPath
    • Root folder path – to create new folders
  • LDAPGroups
    • NewLDAPGroupScript
    • Full path to a script that would create a new LDAP Group – PowerShell script – if not defined, the button for this in LDAP GROUPS will not be visible
  • LDAPGroups
    • NewLDAPGroupScriptAlternateUserName
    • Depends on NewLDAPGroupScriptAlternateUserOption = 4 / this username will be used instead
  • LDAPGroups
    • NewLDAPGroupScriptAlternateUserOption
    • 1 = use current user / 2 = use current user + NewLDAPGroupScriptAlternateUserSuffix / 3 = user current user + NewLDAPGroupScriptAlternateUserPreffix / 4 = use NewLDAPGroupScriptAlternateUserName
  • LDAPGroups
    • NewLDAPGroupScriptAlternateUserPrefix
    • Depends on NewLDAPGroupScriptAlternateUserOption = 3 / this will be set before the current username e.g.: username = jdoe => admin_jdoe
  • LDAPGroups
    • NewLDAPGroupScriptAlternateUserSuffix
    • Depends on NewLDAPGroupScriptAlternateUserOption = 2 / this will be set after the current username e.g.: username = jdoe => jdoe_admin
  • Main
    • CertificatesWarning
    • in days, filter for Certificates that will expire in x days or less
  • SNMPGet
    • AutoSyncInternval
    • numeric interval in hours from the last SNMP Get entry in the tblPrintersSNMPcounters – for auto-snmp get / sync
  • SNMPGet
    • Path
    • Path to and including the snmpget.exe
  • SNMPGet
    • TimeOut
    • TimeOut in seconds
  • Localization
    • Currency
    • Currency symbol
  • Localization
    • Language
    • English / German / Language3
  • Main
    • IncludeLoanderWkst
    • Inlcude = 1 / Exclude = 1 for Workstations need replacement
  • ProjectTasks
    • MailDefaultSender
    • Default sender – will be replaced by a) Employee-Email and if not b) by User email
  • ProjectTasks
    • MailRecipient
    • Target address for ticket creation within project tasks

Localization

The currency symbol normally is set by your systems region and language settings. This will work for most table/list views you will see. Unfortunately Access does not obey this setting for text-fields. Therefor you can set a global currency symbol in the SysConfig that will overwrite the setting to your needs.

Further can do as of version 3.5 use a Language setting either in SysConfig (global/default) or down at the user level where you can set the language on a per user configuration. By default you can chose from the following languages:

  • English
    • this is the default, but you can adjust this language as well to your specific needs
  • German
    • this is translated for the most part – adjust as you see fit
  • Language3
    • Language3 is not translated, it is only an empty column – you can use it for your own language needs
    • Feel free to use the contact form and provide any translations, so others can benefit from it as well

If a translation is missing, the system will automatically fall back to English. This means you don’t have to translate every single entry in the following tables, what should make it a pretty smooth transition. Further, every time you close a form/module and re-open it, the new language settings will be applied, this avoids that you need to close the whole application constantly, while e.g. translating or adjusting the data.

Data views / tables / lists

SysColumns respective table SysColumnWidths is the first table to look at. On the right side there are two new columns here, German and Language3, you simply can write your translations there. Per default respective English, the system will use the column “FriendlyName“, that already was there in previous versions.

Forms / buttons / labels / register cards

The next two tables are accessible via a button in the SysConfig form. Open language table FORMS will open the table SysLanguageForms which controls labels, buttons, register pages as well as form titles within the application.

It follows the same rules for columns and languages. There is a column IGNORE – you can safely filter for any records that have this value not set, as those records are overwritten by the application code on demand from either SysColumnWidths or SysLanguageModules.

In code language

Open language table CODE will open the table SysLanguageModules. This table is used for almost all the message boxes and other stuff. In other words, all text that is embedded in the VBA code. You need to know that this table might grow while you use the application. The way this works is, any time the code executes a certain line, it might need to check for a translation, if the original entry does not yet exist, it will create it and fall back to English.

Confused? Don’t be – I simply made my life easy and put code around almost all the text in the VBA code, but I couldn’t cause all of those code lines to execute and create an according entry. Some of the code possibly never would execute at all.

This table might be the most confusion to translate, while it follows the same rules as the other tables with just columns per language and if empty it falls back to English, but it might be hard to identify certain code lines. If you are unsure, try it out or look for the corresponding Reference in the code itself.

Further is there an issue that Microsoft Access likely will remove any following space characters after your text – it will TRIM them. I am not aware of an Option in Microsoft Access to avoid / stop this behavior. If you see the English original has a following space after the text, there might be a good reason for it. The solution to this is simply engaging SSMS (Microsoft SQL Server Management Studio) for this, opening the table and editing the specific line directly there. SSMS will not TRIM the text as Microsoft Access does.