New implementation of move from to /to be continued !

This commit is contained in:
2014-12-04 16:50:58 +01:00
parent 11aa0ae9e7
commit 29d2057c01
4 changed files with 105 additions and 4 deletions

View File

@ -11,7 +11,18 @@ namespace CobXmlSupport
private CobRow qualifiedRow;
private List<CobRow> qualRows;
private Dictionary<string, string> locIndexis;
private string qfhCode;
private string qfhCode, qfhInd ;
private string[] indexStrs;
public string indexText
{
get { return qfhInd; }
}
public string[] indexStrings
{
get { return indexStrs; }
}
public qualifieldhlp()
{
@ -44,13 +55,15 @@ namespace CobXmlSupport
if (qualRows.Count > 0)
{
qfhCode = "";
foreach (CobRow localCobRow in qualRows)
{
if (qfhCode.Length > 0)
{
qfhCode += " OF ";
}
if (exp) qfhCode += localCobRow.FieldName.Replace(S.ettingPrefix,S.ettingExpPrefix);
if (exp) qfhCode += localCobRow.FieldName.Replace(S.ettingPrefix, S.ettingExpPrefix);
else qfhCode += localCobRow.FieldName;
if (localCobRow.isOccurs)
{
@ -60,9 +73,40 @@ namespace CobXmlSupport
}
qfhCode += "\r\n";
}
if (this.indexText.Length > 0)
{
qfhCode += this.indexText ;
}
}
}
private void initLocIndexTxt()
{
qfhInd = "";
indexStrs = null;
if (locIndexis!=null && locIndexis.Count > 0)
{
indexStrs=new string[locIndexis.Count];
int indCnt = 0;
foreach (KeyValuePair<string, string> tmpInd in locIndexis)
{
indexStrs[indCnt] = tmpInd.Value;
if (qfhInd.Length == 0)
{
qfhInd = "( " + tmpInd.Value;
}
else
{
qfhInd += ",\r\n" + tmpInd.Value;
}
}
qfhInd += " )\r\n";
}
}
private void initQualRows(ref Dictionary<string, string> allInds)
{
CobRow tmpRow = qualifiedRow;
@ -90,6 +134,7 @@ namespace CobXmlSupport
}
else break;
}
initLocIndexTxt();
}
public override string ToString()