static void SwitchToJapanese(AFDatabase db)
        {
            AFTable translations = createOrReturnTranslationLibrary(db);

            // Get all elements and all attributes
            foreach (AFElement element in db.Elements)
            {
                translateElementAndChild(element, translations.Table);
                db.CheckIn();
            }
            // Get all tables
            foreach (AFTable table in db.Tables)
            {
                if (table != translations)
                {
                    translateTableHeaders(table, translations.Table);
                }
            }
            db.CheckIn();
            foreach (AFElementTemplate elementTemplate in db.ElementTemplates)
            {
                translateElementTemplate(elementTemplate, translations.Table, db);
                //insert(translations.Table, elemtemplate.NamingPattern);
                db.CheckIn();
            }
        }
 static void translateTableHeaders(AFTable table, DataTable translations)
 {
     foreach (DataColumn column in table.Table.Columns)
     {
         column.ColumnName = translate(translations, column.ColumnName, "Japanese");
     }
 }
Exemplo n.º 3
0
        public void UpdateDataTest()
        {
            string      path = Constants.AF_TABLE_PATH;
            PITableData data = new PITableData();

            data.Columns = new Dictionary <string, string>();
            data.Columns.Add("Model", "String");
            data.Columns.Add("4WD", "Boolean");
            data.Columns.Add("TopSpeed", "Int32");
            data.Rows = new List <Dictionary <string, object> >();
            var item1 = new Dictionary <string, object>();

            item1.Add("Model", "Jeep");
            item1.Add("4WD", true);
            item1.Add("TopSpeed", 100);
            var item2 = new Dictionary <string, object>();

            item2.Add("Model", "Prius");
            item2.Add("4WD", false);
            item2.Add("TopSpeed", 80);
            data.Rows.Add(item1);
            data.Rows.Add(item2);
            instance.UpdateData(webId, data);

            StandardPISystem.Refresh();
            AFTable myTable = AFObject.FindObject(path) as AFTable;

            myTable.Refresh();

            Assert.IsTrue(myTable.Table.Rows.Count == 2);
            Assert.IsTrue(myTable.Table.Columns.Count == 3);
        }
Exemplo n.º 4
0
        static void addLanguageTitles(AFTable table)
        {
            DataTable datatable = new DataTable();

            datatable.Columns.Add("en", typeof(System.String));
            datatable.Columns.Add(language, typeof(System.String));
            datatable.Columns.Add($"{language}_Check", typeof(System.Boolean));
            table.Table = datatable;
        }
        static void addLanguageTitles(AFTable table)
        {
            DataTable datatable = new DataTable();

            datatable.Columns.Add("English", typeof(System.String));
            datatable.Columns.Add("Japanese", typeof(System.String));
            datatable.Columns.Add("Chinese", typeof(System.String));
            table.Table = datatable;
        }
        static void Main(string[] args)
        {
            PISystem   local       = new PISystems().DefaultPISystem;
            AFDatabase db          = local.Databases.DefaultDatabase;
            AFTable    translation = db.Tables["Translations"];

            local.ExportXml(translation, PIExportMode.AllReferences, @"..\translation.xml", null, null, null);
            AFTable uomconversion = db.Tables["UOM Conversion"];

            local.ExportXml(uomconversion, PIExportMode.AllReferences, @"..\uomConversion.xml", null, null, null);
        }
        static AFTable createOrReturnTranslationLibrary(AFDatabase db)
        {
            AFTable translations = db.Tables["Translations"];

            if (translations == null)
            {
                translations = db.Tables.Add("Translations");
                addLanguageTitles(translations);
                db.CheckIn();
            }
            return(translations);
        }
Exemplo n.º 8
0
        static AFTable createOrReturnTranslationTable(AFDatabase db)
        {
            AFTable translations = db.Tables[$"Translations_{language}"];

            if (translations == null)
            {
                translations = db.Tables.Add($"Translations_{language}");
                addLanguageTitles(translations);
                db.CheckIn();
            }
            return(translations);
        }
Exemplo n.º 9
0
        public void DeleteTest()
        {
            instance.Delete(webId);
            AFDatabase db = StandardPISystem.Databases[Constants.AF_DATABASE_NAME];

            db.Refresh();
            AFTable table = AFObject.FindObject(Constants.AF_ANALYSIS_CATEGORY_PATH) as AFTable;

            Assert.IsNull(table);
            DeleteSampleDatabaseForTests();
            CreateSampleDatabaseForTests();
        }
Exemplo n.º 10
0
        static AFTable createUOMTable(AFDatabase db)
        {
            AFTable table = db.Tables["UOM Groupings"];

            if (table == null)
            {
                table = db.Tables.Add("UOM Groupings");
                DataTable datatable = new DataTable();
                datatable.Columns.Add("Original", typeof(System.String));
                datatable.Columns.Add(uomgrouping, typeof(System.String));
                table.Table = datatable;

                db.CheckIn();
            }
            return(table);
        }
Exemplo n.º 11
0
 static void storeAllTableHeaders(AFTable table, DataTable dt)
 {
     addNameAndDescription(dt, table, table);
     foreach (DataColumn column in table.Table.Columns)
     {
         insert(dt, column.ColumnName);
     }
     foreach (DataRow row in table.Table.Rows)
     {
         foreach (var entry in row.ItemArray)
         {
             if (entry is string)
             {
                 insert(dt, entry.ToString());
             }
         }
     }
 }
Exemplo n.º 12
0
        public void CreateSampleDatabaseForTests()
        {
            DeleteSampleDatabaseForTests();
            CreateSecurityIdentities();
            CreateSecurityMappings();
            CreateUOMClasses();
            AFDatabase db = CreateDatabase();


            AFCategory analysisCategory1  = CreateCategory(db.AnalysisCategories, Constants.AF_ANALYSIS_CATEGORY_NAME, 1);
            AFCategory analysisCategory2  = CreateCategory(db.AnalysisCategories, Constants.AF_ANALYSIS_CATEGORY_NAME, 2);
            AFCategory tableCategory1     = CreateCategory(db.TableCategories, Constants.AF_TABLE_CATEGORY_NAME, 1);
            AFCategory tableCategory2     = CreateCategory(db.TableCategories, Constants.AF_TABLE_CATEGORY_NAME, 2);
            AFCategory attributeCategory1 = CreateCategory(db.AttributeCategories, Constants.AF_ATTRIBUTE_CATEGORY_NAME, 1);
            AFCategory attributeCategory2 = CreateCategory(db.AttributeCategories, Constants.AF_ATTRIBUTE_CATEGORY_NAME, 2);
            AFCategory elementCategory1   = CreateCategory(db.ElementCategories, Constants.AF_ELEMENT_CATEGORY_NAME, 1);
            AFCategory elementCategory2   = CreateCategory(db.ElementCategories, Constants.AF_ELEMENT_CATEGORY_NAME, 2);

            AFTable table = CreateTable(db);

            table.Categories.Add(tableCategory1);
            AFEnumerationSet enumSet = CreateEnumerationSet(db);



            AFElementTemplate elementTemplate = CreateElementTemplate(db);

            CreateElementFromTemplate(db, elementTemplate);
            AFElement el = CreateElementAndAttributes(db, elementCategory1, attributeCategory1);

            CreateElementForStreamSet(db);


            AFAnalysisTemplate analysisTemplate = CreateAnalysisTemplate(db);
            AFAnalysis         an = CreateAnalysis(db, el, analysisCategory1, analysisCategory2);


            AFEventFrame      ef = CreateEventFrame(db, null, elementCategory1);
            AFElementTemplate eventFrameTemplate = CreateEventFrameTemplate(db);
            AFEventFrame      ef2 = CreateEventFrame(db, eventFrameTemplate, elementCategory1);

            db.CheckIn();
        }
Exemplo n.º 13
0
        private AFTable CreateTable(AFDatabase db)
        {
            DataTable dtMyTable = new DataTable();

            dtMyTable.Locale = CultureInfo.InvariantCulture;
            AFTable myTable = db.Tables.Add(Constants.AF_TABLE_NAME);

            myTable.Description = "This is my table.";

            dtMyTable.Columns.Add("TankName", typeof(System.String));
            dtMyTable.Columns.Add("Height", typeof(System.Double));
            dtMyTable.Columns.Add("Volume", typeof(System.Double));

            DataRow drMyRow0 = dtMyTable.NewRow();

            drMyRow0["TankName"] = "TK101";
            drMyRow0["Height"]   = 0;
            drMyRow0["Volume"]   = 0;

            DataRow drMyRow1 = dtMyTable.NewRow();

            drMyRow1["TankName"] = "TK101";
            drMyRow1["Height"]   = 1;
            drMyRow1["Volume"]   = 12.4;

            DataRow drMyRow2 = dtMyTable.NewRow();

            drMyRow2["TankName"] = "TK101";
            drMyRow2["Height"]   = 2;
            drMyRow2["Volume"]   = 48.6;

            dtMyTable.Rows.Add(drMyRow0);
            dtMyTable.Rows.Add(drMyRow1);
            dtMyTable.Rows.Add(drMyRow2);

            // Set the Table and CachInterval Properties
            // and Set the UOM for Volume
            myTable.Table         = dtMyTable;
            myTable.CacheInterval = TimeSpan.FromMinutes(10);
            myTable.SetExtendedProperty("Volume", "UOM", "US gal");
            return(myTable);
        }
Exemplo n.º 14
0
        private AFAttributeList LoadParameters()
        {
            if (Attribute == null || Attribute.Element == null)
            {
                throw new ApplicationException("Attribute and/or element is null");
            }

            AFDatabase afDB    = base.Database;
            AFTable    afTable = afDB.Tables[fTableName];

            if (afTable == null)
            {
                throw new ArgumentException("Table not found");
            }
            fDataRows = afTable.Table.Select();

            var paramAttributes = new AFAttributeList();

            if (!string.IsNullOrEmpty(fAttributeName))
            {
                // find Attribute's object by it name from parameters (this attribute contains key values)
                var refAttr = AFAttribute.FindAttribute(fAttributeName, Attribute);
                if (refAttr == null)
                {
                    throw new ApplicationException(string.Format(Resources.ERR_AttributeHasNotBeenFound, fAttributeName));
                }

                if (!Extensions.IsNumericType(refAttr.Type))
                {
                    throw new ApplicationException(string.Format("The attribute `{0}` has no numeric type ", fAttributeName));
                }

                paramAttributes.Add(refAttr);
            }
            else
            {
                throw new ApplicationException("Name of lookup attribute is null or empty");
            }

            return(paramAttributes);
        }
Exemplo n.º 15
0
        public void UpdateTest()
        {
            string  path  = Constants.AF_TABLE_PATH;
            PITable table = instance.GetByPath(path, null);

            table.Id          = null;
            table.Description = "New table description";
            table.Links       = null;
            table.Path        = null;
            table.WebId       = null;
            instance.Update(webId, table);

            StandardPISystem.Refresh();
            AFTable myTable = AFObject.FindObject(path) as AFTable;

            myTable.Refresh();

            if (myTable != null)
            {
                Assert.IsTrue(myTable.Description == table.Description);
            }
        }
        private void cmbTable_SelectedIndexChanged(object sender, EventArgs e)
        {
            string selectedTableName = cmbTable.Text;

            AFTable selectedTable = fTables[selectedTableName];

            if (selectedTable != null && selectedTable.IsDeleted)
            {
                selectedTable = null;
            }

            if (selectedTable != null)
            {
                cmbKeyField.Items.Clear();
                cmbValueField.Items.Clear();

                DataTable dataTable;
                try {
                    dataTable = selectedTable.Table;
                } catch (Exception) {
                    dataTable = null;
                }

                if (dataTable != null)
                {
                    cmbKeyField.BeginUpdate();
                    cmbValueField.BeginUpdate();
                    foreach (DataColumn dataColumn in dataTable.Columns)
                    {
                        cmbKeyField.Items.Add(dataColumn.ColumnName);
                        cmbValueField.Items.Add(dataColumn.ColumnName);
                    }
                    cmbKeyField.EndUpdate();
                    cmbValueField.EndUpdate();
                }
            }
        }
Exemplo n.º 17
0
        static void fillEnglishTable(AFDatabase db)
        {
            AFTable   translation = createOrReturnTranslationTable(db);
            DataTable dt          = translation.Table;

            insert(dt, db.Description);
            foreach (AFElement element in db.Elements)
            {
                storeAllElement(element, dt);
            }
            db.CheckIn();

            foreach (AFTable table in db.Tables)
            {
                if (!table.Name.StartsWith("Translations_") && table.Name != "UOM Groupings" && table.Name != "Currency Conversion")
                {
                    storeAllTableHeaders(table, dt);
                }
            }

            db.CheckIn();
            foreach (AFElementTemplate elem in db.ElementTemplates)
            {
                addNameAndDescription(dt, elem, elem);
                insert(dt, elem.NamingPattern);
            }
            foreach (var analysis in db.AnalysisTemplates)
            {
                addNameAndDescription(dt, analysis, analysis);
                if (analysis.AnalysisRulePlugIn.Name == "PerformanceEquation")
                {
                    addCodeComments(analysis, dt);
                }
            }
            db.CheckIn();
            foreach (AFCategory category in db.AnalysisCategories)
            {
                addNameAndDescription(dt, category, category);
            }
            foreach (AFCategory category in db.ElementCategories)
            {
                addNameAndDescription(dt, category, category);
            }
            foreach (AFCategory category in db.AttributeCategories)
            {
                addNameAndDescription(dt, category, category);
            }
            foreach (AFCategory category in db.TableCategories)
            {
                addNameAndDescription(dt, category, category);
            }
            foreach (AFCategory category in db.ReferenceTypeCategories)
            {
                addNameAndDescription(dt, category, category);
            }
            db.CheckIn();

            foreach (var enumSet in db.EnumerationSets)
            {
                storeEnumerationSet(enumSet, dt);
            }

            removeUnused(dt);
        }