• 15 апреля стартует «Курс «SQL-injection Master» ©» от команды The Codeby

    За 3 месяца вы пройдете путь от начальных навыков работы с SQL-запросами к базам данных до продвинутых техник. Научитесь находить уязвимости связанные с базами данных, и внедрять произвольный SQL-код в уязвимые приложения.

    На последнюю неделю приходится экзамен, где нужно будет показать свои навыки, взломав ряд уязвимых учебных сайтов, и добыть флаги. Успешно сдавшие экзамен получат сертификат.

    Запись на курс до 25 апреля. Получить промодоступ ...

Запуск кода на любой выбранной базе из меню клиента...

  • Автор темы Akupaka
  • Дата начала
A

Akupaka

Всем привет! :(

Возник вопрос, возможно кто-нить сталкивался с вариантами реализации, и сможет навести на путь решения...

в общем, задача примерно такова, реализовать возможность запуска некоего кода на любом notes-объекте который выделен на УИ в текущий момент.
Например, кто работал с продуктами Teamstudio, к примеру, Configurator, то знают, что запускаемый продукт может получить текущую в данный момент времени БД.
Я предполагаю, что подобным образом можно получить доступ и к текущему УИ-виду, выделенному документу, и т.п.
Например, сделать такой себе диалог, который бы показывал доступ к текущему документу в диалоге...
Но вот не знаю пока каким образом это можно сделать, если конечно можно :)
Если кто-то сталкивался с информацией, которая может помочь понять можно ли это реализовать, подскажите, пжлста, где она есть :D
Возможно, кто-то знает ключевые слова, по которым можно найти подобную информацию.
Буду благодарен за любые подсказки :)

Спасибо!
 
O

Omh

Можно :)
Под speed кнопкой ставишь что-то вроде

Код:
DBHServer := @Environment("DBHServer"); 'путь к супербазе :)
DBHReplicaID := @Environment("DBHReplicaID"); 'реплика супербазы :)
@If(DBHReplicaID = ""; @Return(@Prompt([Ok]; "не прошло"; "однако")); "");

TargetServer := @Subset(@DbName; 1);
TargetPath := @Subset(@DbName; -1);

@Environment("DBHTargetServer"; TargetServer); 'сервер обрабатываемой базы передаём через ENV
@Environment("DBHTargetPath"; TargetPath); 'путь обрабатываемой базы передаём через ENV
@Environment("DBHAction"; "ТУТ_ИМЯ_ОПЕРАЦИИ");

@PostedCommand([FileOpenDBRepID]; DBHReplicaID; DBHServer;"ТУТ_ИМЯ_VIEW";"";"0";"1")

В супербазе во View по имени "ТУТ_ИМЯ_VIEW" в QueryOpen делаешь обработку передаваемых параметров и ставишь Continue = False

У меня в DBH так сделано, я её выкладывал раньше, так что там можно примерно посмотреть...

Да, и там же на QueryOpen можешь взять CurrentDocument/CurrentView - всё будет как надо из Target базы.
 
A

Akupaka

спасибо, поковыряю в эту сторону...

если у кого-то есть другие примеры, то они не будут лишними :)
 
Мы в соцсетях:

Обучение наступательной кибербезопасности в игровой форме. Начать игру!