Часовой пояс: UTC + 3 часа
Правила форума
Вопросы по SAP Query и Quick View — сюда
Вызов экрана другой программы
Добавлено: Пн, дек 06 2004, 11:24
всем пр .
собственно вопрос: как мне корректно из моей программы вызвать один экран другой программы ? Причем чтоб и обработка этого экрана нормально подцеплялась и вообще чтоб все как положено . чтоб он работал
Добавлено: Пн, дек 06 2004, 11:29
запусти соответствующую транзакцию
а еще — посмотри, может нужный тебе экран
— принадлежит функции, которую вызывает чужая
программа, тогда тебе достаточно вызвать ту же функцию
с необходимыми параметрами.
Добавлено: Пн, дек 06 2004, 11:38
EHOT написал(а):
всем пр .
собственно вопрос: как мне корректно из моей программы вызвать один экран другой программы ? Причем чтоб и обработка этого экрана нормально подцеплялась и вообще чтоб все как положено . чтоб он работал
Да вроде никак. Только подэкраны можно вызывать из другиз программ.
Добавлено: Пн, дек 06 2004, 14:51
Уроки Python / Запуск внешних приложений
Надо вызвать ФМ, в котором, во первых, передать данные, а во вторых в этом ФМ запустить нужный экран. И все должно быть хорошо.
_________________
— Ничего не поделаешь, — возразил Кот. — Все мы здесь не в своем уме — и ты, и я!
— Откуда вы знаете, что я не в своем уме? — спросила Алиса.
— Конечно, не в своем, — ответил Кот. — Иначе как бы ты здесь оказалась?
Добавлено: Пн, дек 06 2004, 19:08
EHOT написал(а):
всем пр .
собственно вопрос: как мне корректно из моей программы вызвать один экран другой программы ? Причем чтоб и обработка этого экрана нормально подцеплялась и вообще чтоб все как положено . чтоб он работал 🙂
СALL SUBSCREEN sub_area INCLUDING prog dynnr.
_________________
Hе иди по течению, не иди против течения — иди поперек него, если хочешь достичь берега.
Слова Ванталы. Дела Ванталы
Добавлено: Вт, дек 07 2004, 08:19
Такой вызов пройдет только если вызываемый экран объявлен подэкраном.
Есть такая штука как диалоговый модуль (SE35) — это что-то типа функционального модуля, только построенный на экране со своей логикой. Возможно, требуемый экран содержится в таком объекте? Мне кажется, стоит посмотреть.
На критический случай можно создать свой и далее вызывать его по CALL DIALOG из разных программ.
_________________
«Прежде чем сделать что-то, подумай, к чему это может привести. «
Добавлено: Вт, дек 07 2004, 09:11
Ну так как, решилась проблема-то?
_________________
— Ничего не поделаешь, — возразил Кот. — Все мы здесь не в своем уме — и ты, и я!
— Откуда вы знаете, что я не в своем уме? — спросила Алиса.
— Конечно, не в своем, — ответил Кот. — Иначе как бы ты здесь оказалась?
Добавлено: Вт, дек 07 2004, 09:17
Так как программа, где находится вызываемый экран, моя, то пришлось просто вынести этот экран в отдельную программку и вызывать её . в принципе решение простое . а вот если б прога была чужая, хз как и чего бы делал .
Как перенести установленные программы на другой диск🖥️💽
Часовой пояс: UTC + 3 часа
Кто сейчас на конференции
Сейчас этот форум просматривают: нет зарегистрированных пользователей
Источник: sapboard.ru
Как вызвать одну программу из другой в java и их синхронизирвать?
Есть основная программа «А», которая работает в несколько потоков. Есть программа «Б», которую я хочу запустить в каждом из потоков программы «А», но эти запуски происходят в разное время. У Программы «Б» один поток, по этому хочу, чтобы программа «Б» обрабатывала каждый вызов программы «А» по очереди, вприницпе допустимо запускать несколько поток в программе «Б», если это облегчит задачу, но эти потоки надо формировать динамически, в соответствии с вызовом данной программы из «А».
Как все это сделать?
Можно запустить программу «Б» из программы
«А» Runtime.getRuntime().exec, но ей параметры как передать, и уж тем более синхронизирвать я думаю не выйдет с помощью этого. Можно через консоль запускать программу «Б», и передавать ей параметры, но каким образом вызывать программу «Б» так, чтобы она не повторно запускалась, а вызывалась уже запущаная программа «Б» только с другими параметрами. В общем много мыслей, но не одной, как мне кажется верной.
Две программы необходимо, посколько в первой программе нельзя некоторые действия реализовать, т.к она написана немного не на java по этому некоторые библиотеки не доступны в ней.
- Вопрос задан более трёх лет назад
- 211 просмотров
Решения вопроса 1
Седой и строгий
Используйте какой-нибудь брокер очередей — RabbitMQ, ActiveMQ, Redis и т.п. Потоки программы А отправляют в очередь данные, поток программы Б получает их из очереди и обрабатывает.
Ответ написан более трёх лет назад
Нравится 2 1 комментарий
Источник: qna.habr.com
Вызов одной программы из другой
Конечно, этот пример не имеет практического смысла, но действие IsArray показано в нем ясно. Во второй строке объявлен массив, в третьей – логическая переменная ArrayBool. Далее этой переменной присваивается значение, возвращенное Функцией IsArray (True или False).
Инструкция If использована для проверки результата IsArray и вывода сообщения, если значение переменной ArrayBool равно True. Подробно эта инструкция описана в разделе «Управляющая инструкция If-Then-Else» на стр. 72.
Они помогут Вам определить верхнюю и нижнюю границы индексов массива, как показано в следующем примере:
Sub Lbound_UBound()
Dim Data10(4 To 15) As Integer
MsgBox «Нижняя граница массива» «.»
MsgBox «Верхняя граница массива » «.»
Применение этих функций к обычной переменной или динамическому массиву, не описанному инструкцией ReDim, вызывает ошибку при выполнении программы. Чтобы избежать этого, перед вызовом функций LBound и UBound проверьте переменную функцией IsArray.
Константой называется значение, которое не изменяется в ходе выполнения программы. Константы VBA мало отличаются от подобных элементов других языков программирования и используются (как и предполагает их название) для хранения констант – постоянных величин.
Константы описываются почти так же, как и другие переменные, но с одним исключением – одновременно с объявлением константе присваивается значение, изменить которое потом уже нельзя. Попытка позже присвоить значение константе приведет к ошибке. Вот пример описания константы.
Const MinVal As Integer = 1
Для описания константы используется ключевое слово Const, за которым указывают имя константы, её тип (один из стандартных типов VBA, кроме пользовательского) и значение. Если в описании Вы не зададите тип данных, он будет присвоен константе автоматически, в соответствии с её значением. Обратите внимание, что для задании константы применяют и выражения:
Const Con1 As Integer = 2 * 2
В одной инструкции Const можно описать несколько констант, разделив их запятыми:
Const Con1 As Integer = 5, Con2 As Integer = 6, Con3 As Integer = 7
Массивы констант в VBA задавать нельзя, во всем же остальном они похожи на обычные переменные, если, конечно, Вы при выполнении программы не пытаетесь изменить их значения.
В VBA допускается вызов одной программы из другой, что позволяет разделять код на логически обособленные фрагменты. Эта возможность имеет два «плюса».
§ Если Вам нужно несколько раз выполнить одну и ту же последовательность действий, Вы вправе задать её всего один раз, оформив в виде подпрограммы, а затем по мере необходимости вызывать из других программ. При этом облегчается и её редактирование, поскольку все изменения Вы вносите только однажды.
§ Код VBA, разделенный на подпрограммы, обретает четкую логическую структуру; его легче разрабатывать, отлаживать и обслуживать.
Фрагментируя код, обязательно руководствуйтесь правилами логики. Одна подпрограмма должна отвечать за выполнение одной операции. Не увлекайтесь: чрезмерное дробление кода приведет к тому, что у Вас будет отдельная подпрограмма для каждой инструкции. Решение вопроса, выделять или не выделять действие в подпрограмму, зависит в основном от Ваших желаний и опыта. В следующем примере, в программе ВызовПодпрограммы, для вывода на экран сообщения о вводе данных мы используем подпрограмму DisplayMessage.
Sub ВызовПодпрограммы()
Dim Range1 As Range
Set Range1 = Worksheets(1).Range(«A1»)
Понравилась статья? Добавь ее в закладку (CTRL+D) и не забудь поделиться с друзьями:
Источник: studopedia.ru