Перейти из форума на сайт.

НовостиФайловые архивы
ПоискАктивные темыТоп лист
ПравилаКто в on-line?
Вход Забыли пароль? Первый раз на этом сайте? Регистрация
Компьютерный форум Ru.Board » Компьютеры » Прикладное программирование » Программирование "удобняшек" на VBScript (Часть 2)

Модерирует : ShIvADeSt

 Версия для печати • ПодписатьсяДобавить в закладки
Страницы: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51

Открыть новую тему     Написать ответ в эту тему

ShIvADeSt



Moderator
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Вопросы, задачи и их решения по VBScript.

 
Мануал (english, 600 Кб). | Зеркало
MS Scripting 5.6 (700 КБ), включает последнюю версию VBS. Владельцам XP/2000(?) должен быть не нужен. | Зеркало
Немного на wikiпедии.
Предыдущие части: 1
 
Смежные темы:
Сценарии Windows
Командная строка, батники\сценарии (bat, cmd)
Скрипты KiXtart

Всего записей: 3936 | Зарегистр. 29-07-2003 | Отправлено: 04:12 12-07-2011 | Исправлено: Smitis, 23:28 26-02-2018
zhudionis



Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Alex_Piggy
А не будет наглостью попросить, сделать скрипт для обратной выгрузки из такого XML в мой XLS?
 
 

Всего записей: 100 | Зарегистр. 25-05-2009 | Отправлено: 06:23 28-11-2018 | Исправлено: zhudionis, 06:26 28-11-2018
Alex_Piggy

Advanced Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
Доброе время, zhudionis
Подробнее...

Всего записей: 1557 | Зарегистр. 07-08-2002 | Отправлено: 19:04 28-11-2018 | Исправлено: Alex_Piggy, 11:46 29-11-2018
zhudionis



Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Alex_Piggy
Для меня это уже сложновато, надеюсь, разберусь.
Это тоже VBA? Можно встраивать в любой файл?
 
Понял, это VBS. Но останавливается на 130 строке. Но файл создает и это круто!!!
Вот пример всего файла Ссылка
 
С другими файлами пока ошибок нет.
Вы не представляете насколько упростили работу, готов даже заплатить за такое!!!!!

Всего записей: 100 | Зарегистр. 25-05-2009 | Отправлено: 05:01 29-11-2018 | Исправлено: zhudionis, 05:34 29-11-2018
Alex_Piggy

Advanced Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
Доброе время, zhudionis

Цитата:
Понял, это VBS. Но останавливается на 130 строке. Но файл создает и это круто!!!

Создает, но не весь. Из ~9000 строк только 4000 из-за "=220 В". Исправить - поставьте перед oRange.Value2 = TransposeArray2D(aData)  
oRange.NumberFormat = "@"
 
Заметил - не для всех STATUSES или ANALOGS есть имена. Пример - RTU из строки 1533  <RTU RTUNum="19" RTUName="ШОТ" RTUObjPfx="+ (да)"> . Сейчас - пишет пустые строки.
Проверьте все остальное своими глазами...
UPD: Та где нет имен есть RTUObjPfx="+ (да)" . Что это такое? Поищите полное описание этих XML.

Всего записей: 1557 | Зарегистр. 07-08-2002 | Отправлено: 08:53 29-11-2018 | Исправлено: Alex_Piggy, 08:59 29-11-2018
zhudionis



Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Alex_Piggy
Знак равенства, как я понял, останавливает скрипт, ясно.
 
То что нет имен у Statuses и Analogs - не страшно, главное ,место для имени в Excel остается.
Для себя решили, что имя быть ДОЛЖНО -  правило хорошего тона.
 
RTUObjPfx="+ (да)" - не обязательно, хотя подумываю..... не важно короче
 
 
Вообще файл - ничто иное, как база данных, описание переменных в одной из СКАДА программ.
RTUObjPfx="+ (да)" - говорит о том, что в данном RTU имя RTU будет добавлено  к наименованию параметра.
например RTUName="Оренбурская СЭС-5 КРУ-10 яч.206"
и StatusName="яч.206 ТСН-2 положение тележки вкачена"
 в итоге программа покажет: Оренбурская СЭС-5 КРУ-10 яч.206 - яч.206 ТСН-2 положение тележки вкачена
 
 
Вообще файл создается и средствами самой программы, но делать это совсем неудобно, щелкать мышкой на каждом параметре по несколько раз...... Вот и задумался про Excel, разработчики почему-то про него забыли(

Всего записей: 100 | Зарегистр. 25-05-2009 | Отправлено: 10:05 29-11-2018 | Исправлено: zhudionis, 10:32 29-11-2018
Alex_Piggy

Advanced Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
zhudionis

Цитата:
Знак равенства, как я понял, останавливает скрипт, ясно.

Нет/не совсем.  Знак равенства в начале строки для Excel означает, что это формула.
oRange.NumberFormat = "@" - это принудительно рассматривать все только как текст. То есть проблема пропадет.
 

Цитата:
 
То что нет имен у Statuses и Analogs - не страшно, главное ,место для имени в Excel остается.  
 Для себя решили, что имя быть ДОЛЖНО -  правило хорошего тона.
RTUObjPfx="+ (да)" - не обязательно, хотя подумываю..... не важно короче

Замените
  aData(cStatuses - 1, aDataPos) = oNode.getAttribute("StaDesc")
На  
  aData(cStatuses - 1, aDataPos) =IIF(oRTU.getAttribute("RTUObjPfx") <> "", oRTU.getAttribute("RTUName") & " ", "") & oNode.getAttribute("StaDesc")
И
  aData(cAnalogs - 1, aDataPos) = oNode.getAttribute("AnaDesc")
На
  aData(cAnalogs - 1, aDataPos) =IIF(oRTU.getAttribute("RTUObjPfx") <> "", oRTU.getAttribute("RTUName") & " ", "") & oNode.getAttribute("AnaDesc")
Обновил в предыдущем посте.

Всего записей: 1557 | Зарегистр. 07-08-2002 | Отправлено: 11:30 29-11-2018 | Исправлено: Alex_Piggy, 11:46 29-11-2018
zhudionis



Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Alex_Piggy
Да, да ))) это я и имел ввиду)))
 
Добавлено:

Цитата:
Замените  
  aData(cStatuses - 1, aDataPos) = oNode.getAttribute("StaDesc")  
На  
  aData(cStatuses - 1, aDataPos) =IIF(oRTU.getAttribute("RTUObjPfx") <> "", oRTU.getAttribute("RTUName") & " ", "") & oNode.getAttribute("StaDesc")  
И  
  aData(cAnalogs - 1, aDataPos) = oNode.getAttribute("AnaDesc")  
На  
  aData(cAnalogs - 1, aDataPos) =IIF(oRTU.getAttribute("RTUObjPfx") <> "", oRTU.getAttribute("RTUName") & " ", "") & oNode.getAttribute("AnaDesc")  
Обновил в предыдущем посте.

Вы не правильно поняли, может отсутствовать и AnaDesc и RTUObjPfx, они никак не связаны
 
вот как это в программе
Ссылка

Всего записей: 100 | Зарегистр. 25-05-2009 | Отправлено: 11:31 29-11-2018 | Исправлено: zhudionis, 12:31 29-11-2018
zhudionis



Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Alex_Piggy
Но идея с именем, мне понравилась.
Если нет имени группы то заменять его именем RTU - феноменально!!!

Всего записей: 100 | Зарегистр. 25-05-2009 | Отправлено: 04:21 30-11-2018
Открыть новую тему     Написать ответ в эту тему

Страницы: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51

Компьютерный форум Ru.Board » Компьютеры » Прикладное программирование » Программирование "удобняшек" на VBScript (Часть 2)

Имя:
Пароль:
Сообщение

Для вставки имени, кликните на нем.

Опции сообщенияДобавить свою подпись
Подписаться на получение ответов по e-mail
Добавить тему в личные закладки
Разрешить смайлики?
Запретить коды


Реклама на форуме Ru.Board.

Powered by Ikonboard "v2.1.7b" © 2000 Ikonboard.com
Modified by Ru.Board
© Ru.Board 2000-2018

BitCoin: 1NGG1chHtUvrtEqjeerQCKDMUi6S6CG4iC

Рейтинг.ru

Рейтинг.ru