<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="ru">
	<id>http://docs.altec.ru/index.php?action=history&amp;feed=atom&amp;title=%D0%A0%D1%83%D0%BA%D0%BE%D0%B2%D0%BE%D0%B4%D1%81%D1%82%D0%B2%D0%BE_%D0%BF%D0%BE_%D0%BD%D0%B0%D1%81%D1%82%D1%80%D0%BE%D0%B9%D0%BA%D0%B5_altAwin%3A%D0%A1%D0%BA%D1%80%D0%B8%D0%BF%D1%82%D1%8B%2F%D0%A1%D0%B5%D1%80%D0%B2%D0%B8%D1%81%D1%8B</id>
	<title>Руководство по настройке altAwin:Скрипты/Сервисы - История изменений</title>
	<link rel="self" type="application/atom+xml" href="http://docs.altec.ru/index.php?action=history&amp;feed=atom&amp;title=%D0%A0%D1%83%D0%BA%D0%BE%D0%B2%D0%BE%D0%B4%D1%81%D1%82%D0%B2%D0%BE_%D0%BF%D0%BE_%D0%BD%D0%B0%D1%81%D1%82%D1%80%D0%BE%D0%B9%D0%BA%D0%B5_altAwin%3A%D0%A1%D0%BA%D1%80%D0%B8%D0%BF%D1%82%D1%8B%2F%D0%A1%D0%B5%D1%80%D0%B2%D0%B8%D1%81%D1%8B"/>
	<link rel="alternate" type="text/html" href="http://docs.altec.ru/index.php?title=%D0%A0%D1%83%D0%BA%D0%BE%D0%B2%D0%BE%D0%B4%D1%81%D1%82%D0%B2%D0%BE_%D0%BF%D0%BE_%D0%BD%D0%B0%D1%81%D1%82%D1%80%D0%BE%D0%B9%D0%BA%D0%B5_altAwin:%D0%A1%D0%BA%D1%80%D0%B8%D0%BF%D1%82%D1%8B/%D0%A1%D0%B5%D1%80%D0%B2%D0%B8%D1%81%D1%8B&amp;action=history"/>
	<updated>2026-04-26T05:17:19Z</updated>
	<subtitle>История изменений этой страницы в вики</subtitle>
	<generator>MediaWiki 1.39.3</generator>
	<entry>
		<id>http://docs.altec.ru/index.php?title=%D0%A0%D1%83%D0%BA%D0%BE%D0%B2%D0%BE%D0%B4%D1%81%D1%82%D0%B2%D0%BE_%D0%BF%D0%BE_%D0%BD%D0%B0%D1%81%D1%82%D1%80%D0%BE%D0%B9%D0%BA%D0%B5_altAwin:%D0%A1%D0%BA%D1%80%D0%B8%D0%BF%D1%82%D1%8B/%D0%A1%D0%B5%D1%80%D0%B2%D0%B8%D1%81%D1%8B&amp;diff=1689&amp;oldid=prev</id>
		<title>imported&gt;Kirillche: save from wiki docs editor</title>
		<link rel="alternate" type="text/html" href="http://docs.altec.ru/index.php?title=%D0%A0%D1%83%D0%BA%D0%BE%D0%B2%D0%BE%D0%B4%D1%81%D1%82%D0%B2%D0%BE_%D0%BF%D0%BE_%D0%BD%D0%B0%D1%81%D1%82%D1%80%D0%BE%D0%B9%D0%BA%D0%B5_altAwin:%D0%A1%D0%BA%D1%80%D0%B8%D0%BF%D1%82%D1%8B/%D0%A1%D0%B5%D1%80%D0%B2%D0%B8%D1%81%D1%8B&amp;diff=1689&amp;oldid=prev"/>
		<updated>2023-03-02T10:27:38Z</updated>

		<summary type="html">&lt;p&gt;save from wiki docs editor&lt;/p&gt;
&lt;p&gt;&lt;b&gt;Новая страница&lt;/b&gt;&lt;/p&gt;&lt;div&gt;=== Сервис показа форм документов ===&lt;br /&gt;
Для отображения форм документов при взаимодействии с пользователем должен использоваться специализированный сервис {{ifn|IpubObjectsUIService}}, присутствующий в клиентской части приложения altAwin. В серверной части данный сервис отсутствует. В примере ниже показан вариант использования сервиса отображения документов на примере документа пользовательского поля.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;pascal&amp;quot;&amp;gt;var&lt;br /&gt;
  Session: IomSession;&lt;br /&gt;
  Document: IawUserFieldDoc;&lt;br /&gt;
  ObjectsUIService: IpubObjectsUIService;&lt;br /&gt;
begin&lt;br /&gt;
  // создание сессии (экземпляры документов могут порождаться только в ней!)&lt;br /&gt;
  Session := CreateObjectSession;&lt;br /&gt;
  // создание нового экземпляра документа типа IawUserFieldDoc&lt;br /&gt;
  Document := Session.NewDocument(IawUserFieldDoc);&lt;br /&gt;
  // заполнение полей документа&lt;br /&gt;
  Document.Name := 'TestString';&lt;br /&gt;
  Document.Caption := 'Тестовая строка';&lt;br /&gt;
  Document.OwnerDocumentType := 'IdocEmployee';&lt;br /&gt;
  // получение сервиса визуализации от ядра&lt;br /&gt;
  ObjectsUIService := Framework.GetService(IpubObjectsUIService);&lt;br /&gt;
  if (ObjectsUIService &amp;lt;&amp;gt; Empty) then // при наличии сервиса&lt;br /&gt;
    // показ формы документа в немодальном режиме&lt;br /&gt;
    ObjectsUIService.ShowDocument(Document);&lt;br /&gt;
end;&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;pascal&amp;quot;&amp;gt;&lt;br /&gt;
var&lt;br /&gt;
  UI: IpubObjectsUIService;&lt;br /&gt;
  I: Integer;&lt;br /&gt;
  DocumentForm: IomDocumentForm;&lt;br /&gt;
begin&lt;br /&gt;
  UI := ServiceProvider.GetService(IpubObjectsUIService);&lt;br /&gt;
   &lt;br /&gt;
  for I := UI.DocumentForms.Count - 1 downto 0 do&lt;br /&gt;
  begin&lt;br /&gt;
    DocumentForm := UI.DocumentForms[I];&lt;br /&gt;
    //ShowMessage(DocumentForm.Document.ObjectType);&lt;br /&gt;
    DocumentForm.Close;&lt;br /&gt;
  end&lt;br /&gt;
end;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&amp;lt;noinclude&amp;gt;{{Навигация|Скрипты/Функции|Скрипты|Обработчики событий}}&amp;lt;/noinclude&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Сервис показа сообщений бегущей строки ===&lt;br /&gt;
Сервис используется для отображения заданных текстов в бегущей строке главной формы приложения с возможностью обработки кликов по ним. При отсутствии текста для показа в области отображения бегущей строки выводятся текущие дата и время.&lt;br /&gt;
&lt;br /&gt;
Взаимодействие с сервисом реализуется через следующие интерфейсы: &lt;br /&gt;
* [[IpubInformationBoardService]] — сервис бегущих сообщений;&lt;br /&gt;
* [[IpubColoredText]] — цветной текст;&lt;br /&gt;
* [[IpubColoredTextItem]] — элемент цветного текста;&lt;br /&gt;
&lt;br /&gt;
Интерфейс [[IpubInformationBoardService]] реализует следующие возможности:&lt;br /&gt;
* procedure ShowText(const Text: string; const URL: string = '': AddSpinCount: Cardinal = 0; RepeatCount: Cardinal = 0; RepeatInterval: Cardinal = 300)&lt;br /&gt;
*: Показ простого текста ''Text'', ''URL'' — если задан будет использован при клике на бегущую строку, ''AddSpinCount'' — число дополнительных показов текста за один раз, ''RepeatCount'' — число повторных показов через ''RepeatInterval'', заданного в секундах.&lt;br /&gt;
* procedure ShowColoredText(const ColoredText: IpubColoredText; const URL: string = '': AddSpinCount: Cardinal = 0; RepeatCount: Cardinal = 0; RepeatInterval: Cardinal = 300)&lt;br /&gt;
*: Показ цветного текста ''ColoredText'', ''URL'' — если задан будет использован при клике на бегущую строку, ''AddSpinCount'' — число дополнительных показов текста за один раз, ''RepeatCount'' — число повторных показов через ''RepeatInterval'', заданного в секундах&lt;br /&gt;
* function NewColoredText: IpubColoredText&lt;br /&gt;
*: Создание экземпляра цветного текста&lt;br /&gt;
&lt;br /&gt;
Пример использования сервиса (скрипт должен называться marquee):&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;pascal&amp;quot;&amp;gt;&lt;br /&gt;
var&lt;br /&gt;
  IBS: IpubInformationBoardService;&lt;br /&gt;
  CT: IpubColoredText;&lt;br /&gt;
begin&lt;br /&gt;
  IBS := Framework.GetService(IpubInformationBoardService);&lt;br /&gt;
   &lt;br /&gt;
  IBS.ShowText('Привет лунатикам!', 'https://www.youtube.com/watch?v=ji43FJ2adlY', 1);&lt;br /&gt;
   &lt;br /&gt;
  CT := IBS.NewColoredText;&lt;br /&gt;
  CT.Add('Я ');&lt;br /&gt;
  CT.Add('красно', clRed);&lt;br /&gt;
  CT.Add('-');&lt;br /&gt;
  CT.Add('желто', clYellow);&lt;br /&gt;
  CT.Add('-');&lt;br /&gt;
  CT.Add('синий', clSkyBlue);&lt;br /&gt;
  CT.Add(' текст, кликни меня для повтора');&lt;br /&gt;
 &lt;br /&gt;
  IBS.ShowColoredText(CT, 'altawin://scripts/marquee');&lt;br /&gt;
end;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
При наличии ссылки URL и клику на бегущей строке, движение элемента будет прервано и он будет удалён из очереди повторов&lt;br /&gt;
&lt;br /&gt;
=== Сервис взаимодействия с Oktell ===&lt;br /&gt;
Сервис используется для взаимодействия модулем Oktell, которое реализуется посредством интерфейса [[IpubOktellService]].&lt;br /&gt;
&lt;br /&gt;
Интерфейс предоставляет доступ к следующим функциям и свойствам:&lt;br /&gt;
* {{ClsMnu|ExtractPhoneNumber(PhoneNumber: string): string}} - возвращает номер для набора согласно настройкам, PhoneNumber - телефонный номер в международном формате (только цифры)&lt;br /&gt;
* {{ClsMnu|StartAutoCall(PhoneNumber: string; AbonentName: string)}} - запуск автодозвона на телефонный номер&lt;br /&gt;
* {{ClsMnu|SetUserAccessible(Value: Boolean)}} - установка доступности для входящих соединений текущего пользователя&lt;br /&gt;
* {{ClsMnu|IsUserLogged: Boolean}} - признак наличия авторизации в Oktell&lt;/div&gt;</summary>
		<author><name>imported&gt;Kirillche</name></author>
	</entry>
</feed>