Руководство по настройке altAwin:Скрипты/Функции

Материал из AltecDocs
Перейти к:навигация, поиск

Функции

/altAwin

База данных

DatabaseType
DatabaseType (Connection: string): string

Возвращает тип БД.

ExecSQL
ExecSQL (SQL: string; Params: IcmDictionary; Connection: string='')

Выполняет параметризованный запрос.

ExecuteSQL [d]
ExecuteSQL (SQL, Connection: string)

Выполняет SQL-запрос.

IsDatabaseConnected
IsDatabaseConnected:Boolean

Возвращает True при наличии подключения и прав для работы с БД.

QueryField [d]
QueryField (SQL, Connection: string):Variant

Возвращает первое поле из запроса

QueryRecord
QueryRecord (SQL: string; Params: IcmDictionary; Connection: string=' '):IcmDictionary

Возвращает первую запись результата запроса SQL; если результат пуст, возвращается nil

QueryRecordList
QueryRecordList (SQL: string; Params: IcmDictionary; Connection: string=' '):IcmDictionaryList

Возвращает набор записей результата запроса SQL

QueryRow [d]
QueryRow (SQL, Connection: string):Variant

Возвращает первую запись из результата запроса (объект типа Record)

QueryTable [d]
QueryTable (SQL, Connection: string):Variant

Возвращает результат запроса (объект типа List, содержащий объекты типа Record)

QueryValue
QueryValue (SQL: string; Params: IcmDictionary; Connection: string=' '):Variant

Возвращает значение первого поля первой записи результата запроса SQL; если результат пуст, возвращается Unassigned.

Ввод/вывод

  • AnsiToUnicode (FileName: string)
  • Append (var F:Text)
  • AssignFile (var F:Text; FileName: string)
  • CloseFile (var F:Text)
  • CurrentLanguage: string
  • DirectoryExists (Directory: string):Boolean
  • DlgBox (Title,Msg: string; var Buttons: array of string):Integer
  • Eof (var F:text):Boolean
  • ExtractFileDir (FileName: string): string
  • ExtractFileExt (FileName: string): string
  • ExtractFileName (FileName: string): string
  • ExtractFilePath (FileName: string): string
  • FileExists (FileName: string):Boolean
  • ForceDirectories():Boolean
  • InputBox (Caption, Promt, Default: string): string
  • InputQuery (const Caption, Promt: string; var value: string):Boolean
  • PromptForFileName (var FileName: string; Filter, DefaultExt, Title, InitialDir: string, SaveDialog: boolean):Boolean
  • Read (var TextFile, V:Variant)
  • ReadLn (var TextFile, V:Variant)
  • Reset (var F:Text)
  • Rewrite (var F:Text)
  • SelectDirectory(Caption, Root: string; var Directory: string): Boolean
    Открывает диалог выбора папки. Если указан Root, то дерево директорий будет начинаться от него. Возвращает true, если пользователь нажал OK. Путь помещается в параметр Directory.
  • ShellExecute (FileName: string; Parameters: string):Boolean
  • ShowMessage (Msg:Variant)


  • StreamAdapter (Stream:TStream; Owned:Boolean):Variant
  • UnicodeToAnsi (FileName: string)
  • Write (F:Text; P1:Variant; P2:Variant; P3:Variant; P4:Variant; P5:Variant; P6:Variant; P7:Variant; P8:Variant)
  • WriteLn (F:Text; P1:Variant; P2:Variant; P3:Variant; P4:Variant; P5:Variant; P6:Variant; P7:Variant; P8:Variant)

Дата и время

  • Date:TDateTime
  • DayOfWeek (aDate:TDateTime):Integer
  • DaysInMonth (nYear, nMonth:Integer):Integer
  • DecodeDate (Date:TDateTime; var Year, Month, Day:Word)
  • DecodeTime (Time:TDateTime; var Hour, Min, Sec, MSec:Word)
  • EncodeDate (Year, Month, Day:Word):TDateTime
  • EncodeTime (Hour, Min, Sec, MSec:Word):TDateTime
  • IsLeapYear (Year:Word):Boolean
  • Now:TDateTime
  • Time:TDateTime

Документы

CreateDocument [d]
CreateDocument(DocType: TGUID):Variant

CurentUser [d]
CurentUser -> IdocEmployee

информация о текущем пользователе IdocEmployee

OpenDocument [d]
OpenDocument(DocType: TGUID, Key: Variant):Variant

Открытие документа

Для документов, у которых имеется глобально-уникальное поле "код" или "идентификатор" предусмотрена возможность открытия документа не только по первичному ключу, но и по коду/идентификатору:
{{{1}}}
var
  OrderStage: IdocOrderStage;
begin
  OrderStage := OpenDocument(IdocOrderStage, 'сгп');
  ShowMessage(OrderStage.Title);
end;
SelectDocument
SelectDocument(DocType: TGUID,Caption: string=' ':string, Context: string=' ', Description: string=' '):Variant

Отображение формы выбора документа.

SelectDocumentFolder [d]
  • {{{1}}}
    Отображение формы выбора папки документов.

В случае неудачи функции CreateDocument, OpenDocument, SelectDocument возвращают NIL.

Конвертирование

  • DateTimeToStr (e:Extended):String
  • DateToStr (e:Extended):String
  • FloatToStr (e:Extended):String
  • IntToStr (i:Integer):String
  • StrToDate (s:String):Extended
  • StrToDateTime (s:String):Extended
  • StrToFloat (s:String):Extended
  • StrToInt (s:String):Integer
  • StrToInt64 (s:String):Integer
  • StrToTime (s:String):Extended
  • TimeToStr (e:Extended):String
  • VarToStr (v:Variant):String

Математические

  • Abs (e:Extended):Extended
  • ArcCos (X:Double):Double
  • ArcCot (X:Double)
  • ArcSin (X:Double)
  • ArcTan (X:Extended):Extended
  • Cos (e:Extended):Extended
  • Cot (X:Double):Double
  • DegToRad (X:Double):Double
  • Exp (X:Extended):Extended
  • Frac (X:Extended):Extended
  • HiByte (W:Word): byte
  • HiWord (L:Cardinal):Word
  • Int (e:Extended):Integer
  • Ln (e:Extended):Extended
  • LoByte (W:Word):Byte
  • LoWord (L:Cardinal):Word
  • MaxValue (Data: array of Double):Double
  • Mean (Data: array of Double):Double
  • MinValue (Data: array of Double):Double
  • Pi:Extended
  • Power (Base, Exponent:Double):Double
  • RadToDeg (X:Double):Double
  • Round (Value e:Extended):Integer
  • RoundTo (Value:Double;Digit:Integer):Double
  • Sign (X:Double):Integer
  • Sin (e:Extended):Extended
  • Sqrt (e:Extended):Extended
  • Tan (X:Extended):Extended
  • Total (Data: array of Double):Double
  • Trunc (e:Extended):Integer

Объекты

  • CopyRecord (V:Variant):Variant
  • Createservlet (Name: string):Variant
  • NewList:Variant
  • NewRecord:Variant

Прочие

  • {{{1}}}
    Процедура служит для проверки обязательных условий. Если Condition = False генерируется исключение с сообщением Message.
  • CreateOleObject (ClassName:String):Variant
  • CombineGUID (GUIDHI, GUIDLO:string): string
    Возвращает правильно оформленный уникальный идентификатор в формате «{xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx}»; GUIDHI, GUIDLO — строковые представления чисел Int64.
  • {{{1}}}
  • Evaluate (Expression: string):Variant
    Функция возвращает значение вычисленного выражения Expression.
  • Execute (Expression: string)
    Исполняет код Expression.
  • Evaluate2 (Expression: string; Variables: IcmDictionary):Variant
  • Execute2 (Expression: string; Variables: IcmDictionary)
    Функции Evaluate2 и Execute2 отличаются от Evaluate и Execute наличием возможности передачи в обрабатываемое выражение переменных из словаря:
    var
      D: IcmDictionary;
    begin
      ShowMessage(Evaluate2('a/b', MakeDictionary(['a', 1, 'b', 2])));
      ShowMessage(Evaluate2('a/b', MakeDictionary(['a', 1, 'b', 3])));
     
      D := MakeDictionary(['a', 1, 'b', 2]);
       
      Execute2('begin' + #13 + 'a := b;' + #13 + 'end.', D);
      ShowMessage(D['a']);
    end.
    
  • GenerateGUID:string
    Возвращает новый уникальный идентификатор в формате «{xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx}»
  • GUIDHi(GUID:string):Int64
    Возвращает старшую часть уникального идентификатора, переданного в формате «{xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx}»
  • GUIDLo(GUID:string):Int64
    Возвращает младшую часть уникального идентификатора, переданного в формате «{xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx}»
  • {{{1}}}
  • InputBox (ACaption, APromt, ADefault: string): string
  • InputQuery (ACaption, APromt, ADefault: string; var Value: string):Boolean
  • MessageDlg (Msg: string; DlgType:TMsgDlgType; Buttons:TMsgDlgButtons; HelpCtx:Longint):Integer
  • RaiseException (Param:String)
    Служит для генерации исключений. Может использоваться, например, в обработчике событий для предотвращения некоторых действий. (см. РНА:Обработчики событий)
  • Random:Extended
  • Randomize
  • ShowMessage (Msg:Variant)
  • ValidDate (cDate: string):Boolean
  • ValidFloat (cFlt:String):Boolean
  • ValidInt (cInt:String):Boolean
  • VarArrayCreate (Bounds:Array; Typ:Integer):Variant
  • VarIsClear (var V:Variant):Boolean
    Returns true if the given variant’s value is undefined. The value can be undefined for any of several reasons:
    • The Variant may have had its value set to Unassigned.
    • The Variant’s value may be an interface type that has been set to nil.
    • The Variant may be a custom variant that returns true from its IsClear method.
    • In all other cases, the function result is false.

VarType (V:Variant):Integer

Строки

  • AnsiToUTF8 (S:string): string
  • Chr (i:Integer):Char
  • CompareText (s, s1:string):Integer
  • ConvertCharSet (SourceCharSet,TargetCharSet,Value: string): string
    Возвращает строку Value, сконвертированную из указанной SourceCharSet в TargetCharSet кодировку, [1]
  • ConvertFromCharSet (SourceCharSet,Value: string): string
    Возвращает строку Value, сконвертированную из указанной SourceCharSet кодировки
  • ConvertToCharSet (TargetCharSet,Value: string): string
    Возвращает строку Value, сконвертированную в указанную TargetCharSet кодировку
    Пример работы с функциями преобразования кодировок:
    var
      s: string;
    begin
      s := 'раз... два... три...';
      s := ConvertToCharSet('utf-8', s);
      s := ConvertCharSet('utf-8', 'utf-16', s);
      s := ConvertFromCharSet('utf-16', s);
      ShowMessage(s);
    end;
    
  • Copy (s: string; from, count:Integer): string
  • Delete (var s:String;from, count:Integer)
  • DeleteStr (var s:String;from, count:Integer)
  • DecodeURIComponent(const Value: string; const SourceCharSet, TargetCharSet: string): string
    Производит декодирование URL-кодированной строки. Параметр SourceCharSet указывает исходную кодировку строки Value. Параметр TargetCharSet указывает кодировку, в которой необходимо получить раскодированное значение. Пустая строка в параметрах SourceCharSet и TargetCharSet означает системную кодировку.
  • DecodeHTMLSpecialChars(const Value: string; DecodeQuotes: Boolean): string
    Преобразует специальные HTML-сущности обратно в соответствующие символы, при установленном флаге DecodeQuotes сущность ' заменяется на символ апострофа (').
  • EncodeURIComponent(const Value: string; const TargetCharSet, SourceCharSet: string): string
    Производит URL-кодирование строки согласно RFC 3986.
    TargetCharSet — кодировка, в которой необходимо получить закодированное значение.
    SourceCharSet — исходная кодировка строки Value. Пустая строка в параметрах TargetCharSet и SourceCharSet означает системную кодировку)
  • EncodeHTMLSpecialChars(const Value: string; EncodeQuotes: Boolean): string
    Преобразует специальные символы в HTML-сущности, при установленном флаге EncodeQuotes символ символ апострофа (') заменяется на последовательность '.
  • FillDateTimeTemplate (Template: strng; DT:TDateTime): string
  • FillLeft (var V:Variant; C:String; ToLength:Integer): string
  • FillRight (var V:Variant; C:String; ToLength:Integer): string
  • FillTemplate (Template: string; var params: array of Variant): string
  • GetAttrByName (Source,Name: string): string
  • Insert (S:string; var S2:string; pos:Integer)
  • JSONDecode(Value: string)
    Возвращает значение из JSON-представления
    Пример работы с функцией JSONDecode:
    var
      S, T: string;
      D: IcmDictionary;
    begin
      S := '{"a":97,"A":65}';
     
      D := IcmDictionary(JSONDecode(S));
      ShowMessage('count of names: ' + IntToStr(D.Count));
      ShowMessage('a = ' + VarToStr(D['a']));
      ShowMessage('A = ' + VarToStr(D['A']));
       
      T := JSONEncode(D);
      ShowMessage('original: ' + S + #10#13 + 'recoded: ' + T);
    end;
    
  • JSONEncode(var Value: string): string
    Возвращает JSON-представление для значения Value
  • TidyJSON(const Value: string): string
    Возвращает отформатированную строку с данными в формате JSON
  • Insert (S:string; var S2:string; pos:Integer)
  • Length (S:variant):Integer
  • Lowercase (S:string): string
  • NameCase (S:string): string
  • Ord (ch: char):Integer
  • Pos (substr, s: string):Integer
  • ReplaceStr (AText, AFromText, AToText: string): string
  • ReplaceText (AText, AFromText, AToText: string): string
  • SetLength (var S:variant; L:Integer)
  • StringToColor (S:string):TColor
  • Transliterate (S:string): string
  • Trim (S:string): string
  • Uppercase (S:string): string
  • UTF8ToAnsi (S:string): string

Форматирование

  • Format (Fmt:String; Args: array): string
  • FormatDateTime (Fmt:String; DateTima:TDateTime): string
  • FormatFloat (Fmt:String; Value:Extended): string
  • FormatMaskText (EditMask: string; Value: string): string