ISHRemote icon indicating copy to clipboard operation
ISHRemote copied to clipboard

Add read cmdlets *-IshTranslationJob and *-IshTranslationJobItem

Open ddemeyer opened this issue 6 years ago • 0 comments

TranslationBuilder uses the CMS IshTranslationJob object as leading container to identify which translation stubs need to be created on the CMS side, in which language and which metadata. To then pass control over to TranslationOrganizer who will create the necessary artifacts in the connected translation management system and pass along the translation stubs with the requested workflow per language.

Goal here is to query the generated synchronization artifacts like IshTranslationJob that holds total status of the job and IshTranslationJobItem that tracks individual stubs and their potential retrieved remote errors.

  • [ ] Add Get-IshTranslationJob of a single IshTranslationJob always fully initializes by several API calls, and returns
    1. IshTranslationJob respecting IshTypeFieldSetup
    2. IshTranslationJob.IshTranslationJobContainer[], so no explicit Get- cmdlet but still an object with matching ISHRemote.Format.ps1xml
    3. IshTranslationJob.IshTranslationJobWorkflow[], so no explicit Get- cmdlet but still an object with matching ISHRemote.Format.ps1xml
    4. IshTranslationJob.IshExternalTranslationJob[], so no explicit Get- cmdlet but still an object with matching ISHRemote.Format.ps1xml
  • [ ] Add Find-IshTranslationJob returning IshTranslationJob[] only initializes IshTranslationJob respecting IshTypeFieldSetup
  • [ ] Add Get-IshTranslationJobItem of a single IshTranslationJob in turn requires IshTranslationJobItem
    • IshTranslationJobItem respecting IshTypeFieldSetup
    • Especially columns error/externalstatus allow debugging, available since (TS-10305)
    • Can a IshTranslationJobItem be promoted to a IshDocumentObj? An extra client-side cmdlet, beware of in-memory New-IshDocumentObj consistency.
  • [ ] IshTranslationJob public objects for rendering
    • output.xml rendering the columns: ...
  • [ ] IshTranslationJobItem public objects for rendering
    • output.xml rendering the columns: ...
  • [ ] Optionally add Find-IshTranslationJobItem which is shorthand to debug problematic retries/rollbacks (like SRQ-17158).
    • Key problem is that there is no direct Find operation on IshTranslationJobItem for -LogicalId, -Version, -Lng and optional -Resolution; so the only option/workaround is to loop all Find-IshTranslationJob (in a given status) and retrieve all items over Get-IshTranslationJobItem which will be quite slow. The compare operator is equal, and as it has to happen client-side there is no richness of -MetadataFilter
  • [ ] Close ISHREMOTE-033

Remarks...

  • None-scope is Creating/Updating/Deleting IshTranslationJob
  • None-scope is Creating/Updating/Deleting IshTranslationJobItem
  • Tip: TranslationJobItem has LogicalId=Version=Language=Resolution as key, and not language card id. There is no API call that takes batches using the readable identifiers. Trick is to create a temporary baseline report (LogicalId=Version) and pass that for completion using Language/Resolution as that will return you language card ids in group.

ddemeyer avatar Sep 06 '19 13:09 ddemeyer