Skip to content

clsHelpText

clsHelpText is the BOF business object that backs HoverHelp's data-driven content: it retrieves one help-text record — an application code joined to its reference key description and text — from the APPLICATION_HELP_MASTER/APPLICATION_HELP_DETAIL tables through the SAIF data portal, and is strictly read-only (all write operations throw). (BR-AJAX-017, BR-AJAX-018)

Purpose

  • Retrieves and holds a single help-text record identified by an application code and reference key value, joined from the master and detail help tables. (BR-AJAX-017, BR-AJAX-018)
  • Yields empty-string properties rather than an error when the lookup matches nothing, so a missing help entry degrades silently for the caller. (BR-AJAX-019)
  • Enforces that this business object is read-only by throwing ApplicationException(BOC.Messages.InvalidSQLProperty) on every Criteria write-shape SQL property (CreateSQL, InsertSQL, UpdateSQL, DeleteSQL).

Context

  • Namespace: SAIF.Presentation.Web.Controls.V2.AJAX
  • Assembly/package: SAIF.Presentation.Web.Controls.AJAX.Infragistics111 (packaged in SAIF.BOF.Presentation.Web.Infragistics111)
  • Base class: clsBusinessBase — a framework base class from SAIF.Framework (package SAIF.BOF.Framework).*
  • Nested Criteria class implements IBusinessCriteria (SAIF.Framework) and supplies RetrieveSQL (SQL ID SQL-HELP-RETRIEVE).

Public members

Member Signature Purpose
ApplicationCode ReadOnly Property ApplicationCode As String The application code this help entry belongs to (max 5 characters at the data-request level) (BR-AJAX-017)
ReferenceKeyDescription ReadOnly Property ReferenceKeyDescription As String Description of the help topic, sourced from APPLICATION_HELP_MASTER.REFERENCE_KEY_DESCR
ReferenceKeyValue ReadOnly Property ReferenceKeyValue As String The key identifying which help topic this record is for (max 40 characters) (BR-AJAX-017)
HelpText ReadOnly Property HelpText As String The actual help text/markup, sourced from APPLICATION_HELP_DETAIL.HELP_TEXT
GetHelpText Shared Function GetHelpText(dpi As IDataPortalInfo, applicationCode As String, referenceKeyValue As String) As clsHelpText Factory that constructs the Criteria and calls RetrieveObject to load one record (BR-AJAX-017, BR-AJAX-018)

Behavioral notes

  • AfterRetrieve reads at most one row from the result and calls MarkOld, so the returned object always represents a single logical record even though the underlying query could theoretically match more than one row.*
  • A lookup matching nothing yields an object with empty-string properties rather than Nothing or an exception, so callers that pass the result to HoverHelp.Fill will see an empty (effectively invisible) popup rather than a crash. (BR-AJAX-019, BR-AJAX-016)

Constraints and usage notes

  • All SQL access is fully parameterized (:ApplicationCode, :ReferenceKeyValue); no string concatenation of caller-supplied values into SQL occurs in this class.
  • This object is read-only end to end: Criteria.CreateSQL, InsertSQL, UpdateSQL, and DeleteSQL all throw ApplicationException(BOC.Messages.InvalidSQLProperty) if invoked.

Note: Statements marked with * were inferred from code structure, naming conventions, or contextual evidence where direct confirmation was not available in source artifacts. Statements marked with ** could not be confirmed; treat as unknown until verified.

Sources

  • SAIF.Presentation.Web.Controls.AJAX.Infragistics111/clsHelpText.vb