ILinelistBuildService

Defines the public contract for the LinelistBuildService class, which orchestrates building a linelist by exporting pass-through components (dictionary, choices, exports, analysis, translations, hidden names) directly from a setup workbook to the linelist, and exporting designer-sourced components (geo, passwords, formatter, language codes) from the designer workbook to the linelist. After all exports, domain manager instances targeting the linelist workbook are available via accessor properties.

Lifecycle

Configure #

Bind the service to a designer workbook

Signature:

Public Sub Configure(ByVal hostBook As Workbook)

Sets the internal host workbook reference. Must be called before any other operation. Raises an error when the workbook is Nothing.

Parameters:

  • hostBook: Workbook. The designer workbook.

Core Operations

ImportSetupToLinelist #

Export pass-through components directly from setup to linelist

Signature:

Public Sub ImportSetupToLinelist(ByVal setupPath As String, ByVal targetBook As Workbook)

Opens the setup workbook at the supplied path (read-only), then exports dictionary, choices, exports, analysis, and hidden names directly into the target linelist workbook. The formatter is also exported from setup when it was not already imported via the ribbon (TAG_FORMATTER_IMPORTED). Translations are created directly on the linelist sheet. The setup workbook is always closed on exit, even when errors occur.

Parameters:

  • setupPath: String. Full path to the setup workbook (.xlsb or .xlsx).
  • targetBook: Workbook. The linelist workbook to receive exported data.

ExportDesignerComponents #

Export designer-sourced components to the linelist

Signature:

Public Sub ExportDesignerComponents(ByVal targetBook As Workbook)

Exports geo, passwords, formatter (when ribbon-imported), and language HiddenNames from the designer workbook into the target linelist workbook. These are components that the user configures via the designer ribbon and cannot come directly from the setup file.

Parameters:

  • targetBook: Workbook. The linelist workbook to receive exported data.

BuildExportedInstances #

Create domain manager instances from the exported linelist

Signature:

Public Sub BuildExportedInstances(ByVal targetBook As Workbook)

After ImportSetupToLinelist and ExportDesignerComponents have written sheets into the target workbook, this method creates new domain manager instances pointing to those sheets. Each manager is created only when its corresponding sheet exists in the target workbook.

Parameters:

  • targetBook: Workbook. The linelist workbook containing exported data.

Exported Instances

ExportedDictionary #

Dictionary manager targeting the linelist workbook

Signature:

Public Property Get ExportedDictionary() As ILLdictionary

Returns: ILLdictionary. The exported dictionary manager, or Nothing.


ExportedChoices #

Choices manager targeting the linelist workbook

Signature:

Public Property Get ExportedChoices() As ILLChoices

Returns: ILLChoices. The exported choices manager, or Nothing.


ExportedAnalysis #

Analysis manager targeting the linelist workbook

Signature:

Public Property Get ExportedAnalysis() As IAnalysis

Returns: IAnalysis. The exported analysis manager, or Nothing.


ExportedExport #

Export manager targeting the linelist workbook

Signature:

Public Property Get ExportedExport() As ILLExport

Returns: ILLExport. The exported export manager, or Nothing.


ExportedGeo #

Geo manager targeting the linelist workbook

Signature:

Public Property Get ExportedGeo() As ILLGeo

Returns: ILLGeo. The exported geo manager, or Nothing.


ExportedPasswords #

Passwords manager targeting the linelist workbook

Signature:

Public Property Get ExportedPasswords() As IPasswords

Returns: IPasswords. The exported passwords manager, or Nothing.


ExportedTranslations #

Translations manager targeting the linelist workbook

Signature:

Public Property Get ExportedTranslations() As ILLTranslation

Returns: ILLTranslation. The exported translations manager, or Nothing.


State

HostWorkbook #

The configured host (designer) workbook

Signature:

Public Property Get HostWorkbook() As Workbook

Returns: Workbook. The host workbook.