From 8632d6e7e8834a331e168e59125c9b8377e98aa4 Mon Sep 17 00:00:00 2001 From: Kathy Date: Wed, 1 Aug 2012 11:19:59 +0000 Subject: [PATCH] --- PROMS/VEPROMS.CSLA.Library/Extension/ItemExt.cs | 11 +++++++++-- 1 file changed, 9 insertions(+), 2 deletions(-) diff --git a/PROMS/VEPROMS.CSLA.Library/Extension/ItemExt.cs b/PROMS/VEPROMS.CSLA.Library/Extension/ItemExt.cs index 13604506..8dcb5226 100644 --- a/PROMS/VEPROMS.CSLA.Library/Extension/ItemExt.cs +++ b/PROMS/VEPROMS.CSLA.Library/Extension/ItemExt.cs @@ -2128,17 +2128,24 @@ namespace VEPROMS.CSLA.Library // a subsection. Index into the seqtabs array has to account for metasection level. int localPrintLevel = PrintLevel; StepSectionData sd = ActiveFormat.PlantFormat.FormatData.SectData.StepSectionData; + bool doMeta = false; if (sd.StepSectionLayoutData.TieTabToLevel && ActiveFormat.PlantFormat.FormatData.SectData.UseMetaSections) { if (sd.StepSectionLayoutData.ShowSectionTitles && !MyDocStyle.CancelSectTitle && !(MyDocStyle.SpecialStepsFoldout && MyDocStyle.UseColSByLevel)) localPrintLevel = PrintLevel + CurrentSectionLevel(); + doMeta = true; } + SeqTabFmtList seqtabs = ActiveFormat.PlantFormat.FormatData.SectData.StepSectionData.SeqTabFmtList; // Start with basic cases of alpha/numeric/seq: - if (tbformat.IndexOf("{seq}") > -1) + // If we have metasections AND... + // If the seqtabs for this given level does not get a section number, use the seqtab rather than + // the ident of the step: + bool useSubStepTabs = false; + if (doMeta && IsHigh && !seqtabs[(localPrintLevel<0?0:localPrintLevel) % seqtabs.Count].TabToken.Contains("{numericWpar}")) useSubStepTabs = true; + if (useSubStepTabs || tbformat.IndexOf("{seq}") > -1) { - SeqTabFmtList seqtabs = ActiveFormat.PlantFormat.FormatData.SectData.StepSectionData.SeqTabFmtList; int itmp = (localPrintLevel + PrintBias) % seqtabs.Count; tbformat = seqtabs[itmp].PrintTabFormat; // seqtab in 16bit, i.e. '. or )' etc. string tbtoken = seqtabs[localPrintLevel % seqtabs.Count].TabToken; // seqstart in 16bit, number/letter