powered by simpleCommunicator - 2.0.49     © 2025 Programmizd 02
Форумы / Проектирование БД [игнор отключен] [закрыт для гостей] / PowerDesigner, StoredProc шаблон, [%PROCPRMS%]
4 сообщений из 4, страница 1 из 1
PowerDesigner, StoredProc шаблон, [%PROCPRMS%]
    #39674437
Кифирчик
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Коллеги, всем привет.

В PowerDesigner, когда "рисуешь" базу, в шаблоне для создания хранимой процедуры, заголовком имеется такая строка:
Код: sql
1.
create procedure [%QUALIFIER%]%PROC% ([%PROCPRMS%]) as


в которой есть встроенная переменная [%PROCPRMS%], которая подставляет вместо себя список параметров хранимой процедуры.

На выходе получаем что-то вроде

Код: sql
1.
2.
3.
4.
create procedure dbo.Proc1(param1 int, param2 nvarchar(10)) as
begin
  ...
end



Но когда параметров штук 8, и среди них есть что-то с типом uniqueidentifier, то разворачивание их в виде строки сильно режет глаз.
Код: sql
1.
2.
3.
4.
create procedure dbo.Proc1(param1 uniqueidentifier, param2 nvarchar(10), param3 uniqueidentifier, param4 uniqueidentifier, param5 uniqueidentifier , param6 uniqueidentifier) as
begin
  ...
end


Я бы сказал больше, это х... какая-то, и складывается ощущение что я единственный эту фитчу использую.

Вопрос:
возможно ли переопределить поведение [%PROCPRMS%]?
для неё где-нибудь есть свой "скрипт"?
хочется что-то вида:
Код: sql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
create procedure dbo.Proc1(
   param1 uniqueidentifier
 , param2 nvarchar(10)
 , param3 uniqueidentifier
 , param4 uniqueidentifier
 , param5 uniqueidentifier 
 , param6 uniqueidentifier
) as
begin
  ...
end



а еще лучше так:
Код: sql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
create procedure dbo.Proc1(
   -- comment param1
   param1 uniqueidentifier
   -- comment param2
 , param2 nvarchar(10)
   -- comment param3
 , param3 uniqueidentifier
   -- comment param4
 , param4 uniqueidentifier
   -- comment param5
 , param5 uniqueidentifier 
   -- comment param6
 , param6 uniqueidentifier
) as
begin
  ...
end
...
Рейтинг: 0 / 0
PowerDesigner, StoredProc шаблон, [%PROCPRMS%]
    #39674470
Фотография Alex_496
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Здесь задайте вопрос.
Возможно, George Mcgeachie ответит
...
Рейтинг: 0 / 0
PowerDesigner, StoredProc шаблон, [%PROCPRMS%]
    #39676648
Кифирчик
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Alex_496,
спасибо за наводку, разместил там вопрос )
Уважаемый гуру дедушка Джорж видимо сейчас занят, но мой ломанный английский не испугал сотрудника SAP Филипа Лама, которому большой респект )
Решение заключается в переопределении шаблона создания процедуры, и замены %PROCPRMS% на VB скрипт


Код: sql
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.
create procedure [%QUALIFIER%]%PROC% -- (%PROCPRMS%) 
.vbscript(%PROC% )
    dim proc_name
    dim parameter_list
    parameter_list = vbCrLf 
    proc_name=  ScriptInputArray(0)
    set model=ActiveModel
    for each p in model.procedures
         if p.code = proc_name then
             count = 0
              for each para in p.parameters
                   count = count + 1
                    parameter_list = parameter_list  & "      "   &  " --"  & para.comment & vbCrLf
                    if count  = 1 then 
                           parameter_list =   parameter_list  &  "       "  & para.code & "      " &  para.datatype  & vbCrLf
                    else                         
                           parameter_list =   parameter_list  &  "     , "  & para.code & "      " &  para.datatype & vbCrLf
                   end if
              next
              exit for
         end if
    next
    ScriptResult= proc_name  & " (" &  parameter_list & ") " & vbCrLf
.endvbscript  
as
-- declare <@var> <type>
begin

end


чуть подробнее
https://answers.sap.com/questions/567726/change-procprms-generation-format.html
...
Рейтинг: 0 / 0
PowerDesigner, StoredProc шаблон, [%PROCPRMS%]
    #39676763
Фотография Alex_496
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Кифирчик,

George отвечает также через соцсеть
...
Рейтинг: 0 / 0
4 сообщений из 4, страница 1 из 1
Форумы / Проектирование БД [игнор отключен] [закрыт для гостей] / PowerDesigner, StoredProc шаблон, [%PROCPRMS%]
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]