Добрый день
Подскажите на какое событие нужно прописать код , чтобы после окраски строк Grid a выходило сообщение о количестве раскрашенных строк,
пробовал onShow Prepea и тд не могу подобрать.
а если указать здесь grdDataOnGetRowDrawInfo то окно сообщения выходит по количеству строк в Dataset это не устраивает.
Нравится
Здравствуйте, Евгений.
Как мне кажется, Вам необходимо узнавать количество отображаемых в реестре колонок и умножать на количество раскрашенных записей в датасете, чтобы получить нужное число ячеек.
Как-то так:
function grdDataOnGetRowDrawInfo(DataGrid, Color, TextColor, ImageName, Font) { var Dataset = dlData.Dataset; if (DataGrid.ActiveView.Items(Column).IsVisible) { GridColumnsCount = GridColumnsCount + 1; } if (Dataset.Values('AccountTypeID') == '{3EAC7195-607B-4DAC-A832-8954E3201031}') { TextColor.Value = clBlue; RowsDrawCount = RowsDrawCount + 1; } Column = Column + 1; MessageBox(FormatStr(RowsDrawCount * GridColumnsCount)); }
"Безродный Андрей" написал:Здравствуйте, Евгений.
Как мне кажется, Вам необходимо узнавать количество отображаемых в реестре колонок и умножать на количество раскрашенных записей в датасете, чтобы получить нужное число ячеек.
Здравствуйте
Не совсем то.
Как прорисовать и подсчитать кол во записей я разобрался использую function grdDataOnGetRowDrawInfо
вопрос в том в каком месте прописать появления пользователю Окно сообщения ShowConfirmationDialog( Кол во строк") чтобы оно появлялось после открытия реестра и отрисовки строк, потому как если я это окно поставлю в функцию
function grdDataOnGetRowDrawInfo(DataGrid, Color, TextColor, ImageName, Font)
тогда оно появляется после каждой прорисованной строки.
"Бондарь Наталия" написал:Евгений, попробуйте на OnDatasetAfterOpen.
Пробовал окно появляется до открытия самого реестра
и потом еще появляется каждый раз при появлении окна редактирования реестра
нажатии на кнопку Изменить.
"Бондарь Наталия" написал:Боюсь что тогда только по действию или кнопке...
а подскажите как тогда можно сообщение на Outlook отправить вместо диалогова окна?
Используйте функцию SendEmail (определена в скрипте scr_MailUtils).
В конфигурации много примеров, вот один из них:
SendEmail({Address: 'support@tscrm.com', Subject: "Запрос в службу поддержки Terrasoft", BodyFormat: 1, Attachments: [TempFileName]});
"Бондарь Наталия" написал:Используйте функцию SendEmail (определена в скрипте scr_MailUtils).
В конфигурации много примеров, вот один из них
Спасибо Наталья почти подходит,
небольшой уточнение , какой параметр делает чтобы письмо отправлялось без открытия шаблона и участия пользователя.
В данном примере открывается шаблон письма и нужно нажимать на кнопку Отправить
Евгений,
развернутый пример есть в теме:
http://www.community.terrasoft.ru/blogs/7911
В качестве примера используется функция SendEmailByTemplate скрипта scr_MailUtils с параметрами AutoSend и Silent.
SendEmailByTemplate(TemplateID, {RecordID: ID, Address: AddressList, AutoSend: true, Silent: true}); }
Андрей спасибо за пример, может пригодиться в будущем отправка по группам и тд,
но в данном случае мне нужно отправить письмо с списком Контрагентов, на один адрес (укажу сразу в скрипте) больше всего подходит функция
SendEmail({Address: 'Evgeniy.Evdokimov@fund.kz',
Subject: "Список контрганетов",
Body: 'Список контрагентов следующий '})
только как заставить чтобы письмо уходило автоматически
может от версии зависит
у меня 3.3.2 . 294
Евгений, установите параметр AutoSend: true (можно посмотреть в примере Андрея).
Все спасибо нашел то что нужно !
SendEmail({Address: 'Evgeniy.Evdokimov@fund.kz',
Subject: 'Список контргентов', BodyFormat: 2,
HTMLBody: 'Список просроченных договоров',
AutoSend: true, SendImmediately: true});