Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Обновление таблицы из контекстного меню и текстового поля #1821

Closed
akademik1986 opened this issue Dec 23, 2022 · 21 comments
Labels
enhancement New feature or request

Comments

@akademik1986
Copy link
Contributor

Версия Vanessa Automation 1.2.039.11
Версия платформы 8.3.20
Режим совместимости базы, где запускается Vanessa Automation 8.3.17
Операционная система windows

Иногда при работе с таблицами Gerkin требуется обновить значения таблицы из таблицы клиента (изменился эталон). Была бы полезной кнопка в контекстном меню, чтобы можно было обновить значения в существующей таблице из клиентского приложения, так как делать новую таблицу более трудозатратно - изменены состав колонок, их порядок, настроен шаблон в значениях таблицы.
Причем предлагаю не менять значения в колонках с шаблоном.

image

@Pr-Mex
Copy link
Owner

Pr-Mex commented Dec 23, 2022

@akademik1986
Да, это было бы полезно. Я сам думал о том, что пользователю нужно периодически обновлять данные из эталона.

@Pr-Mex Pr-Mex added the enhancement New feature or request label Dec 23, 2022
@mors1eska
Copy link

@Pr-Mex это я попробую взять (в чате такое же писал)
Разобъю на 2 части:

  1. актуализация обычного текстового поля
  2. актуализация таблицы

Тут еще попишу для себя штуки всякие, чтобы не запутаться

Т_аблицаЭталон - если пустая, то заменяем значение
МодульРедакторТекста().ВставитьТекстСУчетомФорматирования(Объект.СгенерированныйСценарий); - так вставляем текст
НомерСтрокиДерева - где именно надо что-то вставить

ОбработкаОповещения

ИначеЕсли ИмяСобытия = "ПерейтиКСтрокеДереваСОшибкой" Тогда
ПерейтиКСтрокеДереваСОшибкой(Параметр);_

@Pr-Mex
Copy link
Owner

Pr-Mex commented Jan 2, 2023

@mors1eska хорошо

@mors1eska
Copy link

@Pr-Mex а как понять, какие методы имеет ванесса эдитор?
Я про, например, вот эти ,ПозицияVanessaEditor = ЭкземплярVanessaEditor.getPosition();

Я получил значение, хочу его вставить в правильное место
Пока не догоняю?

image

@Pr-Mex
Copy link
Owner

Pr-Mex commented Jan 2, 2023

@akademik1986
Сейчас точно не помню метод. Его можно подсмотреть в методе контекстного меню - Редактировать таблицу. Ctrl+shift+T. Там открывается форма для редактирования таблицы Gherkin. Затем идёт оповещение формы VA, чтобы сделать вставку в редактор.

@Pr-Mex
Copy link
Owner

Pr-Mex commented Jan 2, 2023

@lintest
Подскажи, пожалуйста, где лежит список методов редактора?

@lintest
Copy link
Contributor

lintest commented Jan 2, 2023

@lintest Подскажи, пожалуйста, где лежит список методов редактора?

Список методов лучше смотреть в исходном коде редактора:
https://github.com/Pr-Mex/VAEditor/blob/master/src/vanessa-editor.ts#L18

А также на официальном сайте Monaco Editor API
https://microsoft.github.io/monaco-editor/api/index.html

@mors1eska
Copy link

@lintestПодскажи, пожалуйста, где лежит список методов редактора?

Список методов лучше смотреть в исходном коде редактора: https://github.com/Pr-Mex/VAEditor/blob/master/src/vanessa-editor.ts#L18

А также на официальном сайте Monaco Editor API https://microsoft.github.io/monaco-editor/api/index.html

Спасибо, чуть стало понятнее
Но чот не могу совладать с
ПолныйТекстСтроки = ЭкземплярVanessaEditor.getLineContent(ТекущаяСтрокаVanessaEditor);

Он какие-то произвольные строки возвращает =( а не ту, которую хочу править
Может как-то можно найти и передать правильную?

@Pr-Mex
Copy link
Owner

Pr-Mex commented Jan 2, 2023

@mors1eska
А что у тебя в переменной ТекущаяСтрокаVanessaEditor?

@mors1eska
Copy link

mors1eska commented Jan 3, 2023

@mors1eska А что у тебя в переменной ТекущаяСтрокаVanessaEditor?

Ну туда строку текущую возвращает, причем, она, получается, ориентируется на курсор
А курсор может быть где угодно же

image

Надо как-то правильную строку найти

Можно, конечно, как-то перебор всех строк всегда делать, но не знаю, на сколько это норм вариант

@mors1eska
Copy link

Кажется, туплю
У меня есть номер строки дерева и можно попробовать с ним поиграть

@mors1eska
Copy link

@mors1eska А что у тебя в переменной ТекущаяСтрокаVanessaEditor?

Пока сделал на сингл, буду разбираться как перетащить в обычную и залить
И только для обычных значений (без таблиц), хочу чтобы код поглядел, может все плохо очень =))

Записал видео как работает, по эргономике - норм?
http://recordit.co/oQZrJf444l

@Pr-Mex
Copy link
Owner

Pr-Mex commented Jan 3, 2023

@mors1eska
Видео посмотрел. Всё ок.

@Pr-Mex
Copy link
Owner

Pr-Mex commented Jan 3, 2023

@mors1eska
Код неудобно смотреть через сравнение epf. Сделай реквест и там код будет виден.

@mors1eska
Copy link

@mors1eska Код неудобно смотреть через сравнение epf. Сделай реквест и там код будет виден.

Что-то отправил вроде
#1829

@mors1eska
Copy link

mors1eska commented Jan 5, 2023

Собираю информацию для обновления таблиц

  1. В деталях ошибки у нас какое-то хитрое представление таблиц

image

  1. Мы можем его преобразовать в ТабличныйДокумент

    МассивКлючей = Неопределено;
    ТаблицаЭталонТабДок = ПреобразоватьЗначениеВМакет(ТаблицаЭталон,МассивКлючей);
    ТаблицаТекущееЗначениеТабДок = ПреобразоватьЗначениеВМакет(ТаблицаТекущееЗначение,МассивКлючей);

  2. Надо понять, есть ли готовая функция, которая преобразует табличный документ в таблицу геркин. По идее она есть. мы же получаем данные таблиц, когда записываем тесты

@mors1eska
Copy link

@Pr-Mex можешь подсказать, https://t.me/testspro1c/68138

jenkins-1eska pushed a commit to mors1eska/vanessa-automation that referenced this issue Jan 16, 2023
…о файла, Доработана возможность актуализации текстовых расходов из прибыли при тестировании данных
jenkins-1eska pushed a commit to mors1eska/vanessa-automation that referenced this issue Jan 21, 2023
@Pr-Mex Pr-Mex changed the title Обновление таблицы из контекстного меню Обновление таблицы из контекстного меню и текстового поля Jan 22, 2023
Pr-Mex added a commit that referenced this issue Jan 22, 2023
#1828 #1821 Доработано создание фичи из шаблона текстового файла, аботана возможность актуализации текстовых расходов из прибыли при тестировании данных
@mors1eska
Copy link

Попробую подробнее расписать про актуализацию таблиц

Смотрю форму детальной информации об ошибке
Там есть 2 переменные:

  • ТаблицаЭталон
  • ТаблицаТекущееЗначение

У них довольно своеобразный формат
image

Задача
В тесте подменить ТаблицаЭталон на ТаблицаТекущееЗначение

Пытаюсь воспользоваться механизмом, который используется при редактировании таблиц
ИмяСобытия = "РедактированиеТаблицыGherkin" Тогда

Там таблица передается как массив строк
МассивТаблицы

image

Там используется вот такая функция
ЗаменитьТаблицуGherkinПослеРедактирования

В ней есть процедура ФорматироватьТаблицуGherkin(МассивСтрокТаблицы);
Может она может преобразовать строку полученного значения в таблицу? Хотя, не похоже на это

В итоге мой вопрос такой:
Есть ли какие-то средства готовые, которые ТаблицаТекущееЗначение переделаю в массив строк с нужным форматированием? чтобы скормить ее в ЗаменитьТаблицуGherkinПослеРедактирования?

@Pr-Mex
Copy link
Owner

Pr-Mex commented Jan 30, 2023

У них довольно своеобразный формат

Это просто табличный документ

@mors1eska
Copy link

А нет ли чего готового - как перевести из табличного документа в таблицу Геркин?

@Pr-Mex
Copy link
Owner

Pr-Mex commented Feb 1, 2023

Решено.

@Pr-Mex Pr-Mex closed this as completed Feb 1, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request
Projects
None yet
Development

No branches or pull requests

4 participants