public bool GenerateScreen(ScreenModel model) { try { bool _result = false; OutputScreenGeneratorHelper generator = new OutputScreenGeneratorHelper(screenModel: model); _result = generator.Do(message: out string _message, screenXmlTextContent: out string xmlText); if (_result == false) { Console.WriteLine(_message); } XMLExportHelper export = new XMLExportHelper(xmlTextContent: xmlText, fileName: "Output.xml"); _result = export.Do(message: out _message); if (_result == false) { Console.WriteLine(_message); } return(_result); } catch (Exception) { return(false); } }
public bool GenerateOTX(ScreenModel model) { bool _result = false; try { //это пяти значная цифра - параметр сервиса из PDX (по сути это DID - diagnostic ID) List <int> services_Request_PARAM_ID_List = new List <int>(); //это значение, посылаемое в сервис по выбранному DID. Например: "Disabe" или "Enable" (для дискретных сервисов) List <string> services_SIGNAL_VALUE_List = new List <string>(); //список из объектов "сервис". Объекты предопределены в справочнике "SERVICES_handbook" - namespace GXRG.Data > SERVICE.cs List <SERVICE> servicesList = new List <SERVICE>(); //по входной модели данных (model) инициализируем 3 списка, объявленных выше DefineREFS_ListsAboutServices(model, out services_Request_PARAM_ID_List, out services_SIGNAL_VALUE_List, out servicesList); //объявляем генератор OTX, передавая 3 инициализированных списка var generator = new GXRG.Services.OTX.OutputOTXGeneratorHelper(services_Request_PARAM_ID_List, services_SIGNAL_VALUE_List, servicesList); //генерация. Выходной параметр message скажет о статусе операции. Параметр sourcestring вернет XML текст нового OTX _result = generator.Do(message: out string _message, sourcestring: out string xmlText); if (_result == false) { Console.WriteLine(_message); } //объявлем хелпер по экспорту XML, указывая в качесте параметра XML текст-контент, а также имя файла XMLExportHelper export = new XMLExportHelper(xmlTextContent: xmlText, fileName: "OutputControl.otx"); //экспорт, создание нового файла OTX _result = export.Do(message: out _message); if (_result == false) { Console.WriteLine(_message); } return(_result); } catch (Exception ex) { Console.WriteLine(ex.ToString()); return(false); } }
public bool GenerateOTX(ScreenModel model) { bool _result = false; //generate xml text try { // список элементов из таблицы эксель, соответствующий сигналам из PDX var specificItems = model.ScreenItems.Where(x => x.CompositionType.Equals(CompositionType.AccordingToOutputValue)); var servicesList = Get_CorrectServicesList(specificItems); var generator = new InputOTXGeneratorHelper(servicesNames_List: servicesList.Select(x => x.Procedure_Name).ToList(), phrases_List: specificItems.Select(x => x.Phrase.Value).ToList()); _result = generator.Do(message: out string _message, sourcestring: out string xmlText); if (_result == false) { Console.WriteLine(_message); } //export xml XMLExportHelper export = new XMLExportHelper(xmlTextContent: xmlText, fileName: "InputControl.otx"); _result = export.Do(message: out _message); if (_result == false) { Console.WriteLine(_message); } return(_result); } catch (Exception ex) { throw ex; } }