Ejemplo n.º 1
0
        public override void ConvertDocument(OldInstanceFile instanceFile)
        {
            RemoveEmptyAttributes(instanceFile.Document.DocumentElement, "//*");

            // Convert all references.
            ConvertReferences(instanceFile.Document.DocumentElement, "//transaction", "name", ObjClass.Transaction);
            ConvertReferences(instanceFile.Document.DocumentElement, "//attributes/attribute", "name", ObjClass.Attribute);
            ConvertReferences(instanceFile.Document.DocumentElement, "/instance/level/descriptionAttribute", "name", ObjClass.Attribute);
            ConvertReferences(instanceFile.Document.DocumentElement, "//order/orderAttribute", "name", ObjClass.Attribute);
            ConvertReferences(instanceFile.Document.DocumentElement, "//actions/action", "gxobject", Guid.Empty);
            ConvertReferencesToNames(instanceFile.Document.DocumentElement, "//filterAttributes/filterAttribute", "name");
            ConvertReferences(instanceFile.Document.DocumentElement, "//filterAttributes/filterAttribute", "domain", ObjClass.Domain);
            ConvertReferences(instanceFile.Document.DocumentElement, "//filterAttributes/filterAttribute", "prompt", ObjClass.WebPanel);
            ConvertReferencesToNames(instanceFile.Document.DocumentElement, "//parameters/parameter", "name");
            ConvertReferences(instanceFile.Document.DocumentElement, "//parameters/parameter", "domain", ObjClass.Domain);
            ConvertReferencesToNames(instanceFile.Document.DocumentElement, "//view", "caption");

            // Rename attributes.
            RenameAttributes(instanceFile.Document.DocumentElement, "//transaction", "name", "transaction");
            RenameAttributes(instanceFile.Document.DocumentElement, "//attributes/attribute", "name", "attribute");
            RenameAttributes(instanceFile.Document.DocumentElement, "//level/descriptionAttribute", "name", "attribute");
            RenameAttributes(instanceFile.Document.DocumentElement, "//orderAttribute", "name", "attribute");

            // Rename elements.
            RenameElements(instanceFile.Document.DocumentElement, "//order/orderAttribute", "attribute");
            RenameElements(instanceFile.Document.DocumentElement, "//filter/filterAttributes", "attributes");

            // Remove elements.
            RemoveElements(instanceFile.Document.DocumentElement, "//transaction/parameters");
            RemoveElements(instanceFile.Document.DocumentElement, "/instance/level/prompt");
        }
Ejemplo n.º 2
0
        public override KBObjectNameKey GetParentObject(KBModel model, OldInstanceFile instanceFile)
        {
            XmlElement transactionElement = (XmlElement)instanceFile.Document.SelectSingleNode("/instance/transaction");
            if (transactionElement != null)
            {
                string trnName = transactionElement.GetAttribute("name");
                if (!String.IsNullOrEmpty(trnName))
                {
                    trnName = ConvertReferenceToName(trnName);
                    return new KBObjectNameKey(model, ObjClass.Transaction, trnName);
                }
            }

            return null;
        }
Ejemplo n.º 3
0
 public override void PostConvertInstance(PatternInstance instance, OldInstanceFile instanceFile)
 {
     int iLevel = 1;
     foreach (PatternInstanceElement levelElement in instance.PatternPart.RootElement.SelectElements("level"))
         levelElement.Attributes["id"] = String.Format("{0}:{1}", instance.Parent.Guid, iLevel++);
 }
Ejemplo n.º 4
0
 public override IEnumerable<KBObjectNameKey> GetObsoleteObjects(PatternInstance instance, OldInstanceFile instanceFile)
 {
     Transaction parentTransaction = (instance.KBObject as Transaction);
     if (parentTransaction != null)
         yield return new KBObjectNameKey(instance.Model, ObjClass.WebPanel, "Controller" + parentTransaction.Name);
 }