Re: АПИ - Первый шаг
Базовые сведения.
Что такое ТКС-АПИ?
ТКС АПИ это структурированный набор объектов для доступа к объектам TechnologiCS( TechnologiCS ТПП, OutdoCS). Использование АПИ позволяет вам получить прямой доступ ко всем данным ТКС.
В настоящий момент АПИ только разрабатывается, так что открыты не все объекты. АПИ на запись (на возврат данных обратно) пока не реализован и будет открыт в будущих версиях. Написаны только самые необходимые функции для записи данных (документооборот, параметры).
Используя ТКС АПИ вы можете использовать данные ТКС в любом вашем приложении, можете написать свои собственные конфигурации ТКС для пользователей.
После развития АПИ на запись вы сможете писать любые процедуры импорта данных в ТКС и так же обработке собственных данных ТКС.
Само АПИ представляет собой ActiveX объект, и поэтому может использоваться в любом языке программирования, который позволяет использовать ActiveX-объекты (Delphi, Visual Basic, Visual C++, Java and etc.).
Для того чтобы использовать АПИ, необходимо знание какого-нибудь языка программирования, знание программы TechnologiCS (можно и без знания ее конечно, но тогда цель использования не совсем понятна) ну и конечно же знание АПИ (с последним конечно же сложнее всего, так как оно только развивается, будет постоянно наращивается и к тому пока не очень хорошо документировано, хотя на мой взгляд лучшим документом будет хороший пример конкретного использования чем мы и постараемся помочь).
Для того чтобы работать с АПИ не надо знать ODBC, ADO, BDE или иные способы доступа к базам данных (хотя их знание конечно не помешает, так как везде используется стандартное понятие набора данных и принципы работы с ним аналогичны).
Вы НЕ БУДЕТЕ иметь прямого доступа к базе данных. Доступ осуществляется только через наши объекты. Соответственно вам не надо будет думать о правах, о дополнительных настройках, об изменении структур данных. Вся эта обработка будет заложена у нас и вам остается использовать это. В идеале с выходом нового ТКС АПИ все ваши программы будут работать, за исключением вновь появившегося функционала (хотя и его можно будет легко отрабытывать динамически так как данные наследуются от одних объектов), хотя конечно в реальности будет посложнее, но мы постараемся максимально придерживаться этих принципов.
Что нужно чтобы запустить ТКС-АПИ?
1. Нужно установить ТКС версии 2.5.1.0 или выше, при установке выбрать пункт АПИ (здесь и в дальнейшем под ТКС подразумевается все продукты этой серии - TechnologiCS TechnologiCS ТПП, OutdoCS – ТКС самый полный вариант и потому будем говорить всегда о нем).
2.Нужно иметь лицензию на использование ТКС АПИ.
3.После инсталляции у вас появятся следующие файлы
· RegTCS_API.bat – командный файл для регистрации ТКС АПИ.
· UnRegTCS_API.bat – командный файл для разрегистрации ТКС АПИ.
· tregsvr.exe – службеная програмка выполняющая регистрацию
· TcsApi.ocx – сам ТКС АПИ.
· TCSAPI.HLP – файл помощи по АПИ.
Для того чтобы начать работать необходимо выполнить RegTCS_API.bat. В общем-то его надо выполнять при каждой инсталляции и с каждой новой версией.
Поскольку АПИ только развивается, там содержится еще не мало ошибок и недоработок (в версии 2.51.0 оно работает не всегда стабильно, но в новой версии будет уже гораздо лучше и функционал там значительно расширен. Но для того чтобы пробовать изучать и использовать в версии 2.5.1.0 уже есть не мало, а все что заявлено в предыдущих версиях будет поддерживаться в дальнейшем.
В дальнейшем будет доступен подробный пример использования АПИ с комментариями поддерживаемый от версии к версии на языках Deplhi, VBA for Application, Visual C++. Выложенный сейчас пример немного сложен для понимая и мы постараемся в дальнейшем упростить его.
Ну а сейчас самый простейший пример использования АПИ.
Пример использования АПИ
Запустите Excel.
Выберите команду Сервис – Макрос – Редактор Visual Basic (или просто нажмите Alt+F11).
В появившемся окне (Редактор Visual Basic) выберите команду Tools – Reference.
Нажмите кнопку Browse и найдите файл TcsApi.ocx.
Нажмите OK ну и на всякий случай выполните Сохранить файл (дабы не проделывать это при следующем запуске).
Выберите команду Insert – Module и напишите в редакторе следующие строки.
Public Sub FirstStep() Dim TCS As CSDN.TCS Dim App As CSDN.Tcs_Application 'Создадим объект ТКС АПИ Set TCS = CreateObject("CSDN.TCS") 'Создадим экземляр приложения (сеанс). Внимание ! создание повторного сеанса не допустимо! Set App = TCS.Login 'вызывает стандартное окно аутентификации пользователя 'Set App = TCS.LoginEx("Администратор", "0") ' Если вы сами пшите диалог ввода пользователя и пароля или просто его знаете 'Set App = TCS.LoginCurrent ' если вы хотите использовать сеанс уже запущенного ТКС Dim Mes As CSDN.Mesuriments 'Получим справочник единиц ихмерения Set Mes = App.Mesuriments Dim MesStr As String If Mes.IsEmpty Then MesStr = "Справочник единиц измерения пуст!" Else Mes.First While Not Mes.EOF 'Для примера вывеведим весь справочник в одну строку. Возьмем идентификатор единицы измерения и ее обозначение MesStr = MesStr + Mes.Properties("ID").DisplayText + "=" + Mes.Properties("NOTE").DisplayText + "_" Mes.Next Wend End If 'Освободим объект Единицы измерения Set Mes = Nothing MsgBox MesStr 'освободим объект приложения и завершим работу Set App = Nothing Set TCS = Nothing End Sub
Сохраняемся и жмем кнопку F5. Только не пытайтесь запустить пример два раза. Не получится. Придется всякий раз закрывать и открывать Эксель.
Все. Надеюсь это пример не вызовет затруднений. Он ничего не делает, просто создает ТКС и получает данные об его справочнике единиц измерения.
Если он запустился, значит АПИ у вас работает, и можно пробовать разбираться дальше. Если нет…Ну тогда надо разбираться в чем же именно дело.
В следующем примере я покажу три (а в новой версии их будет уже четыре) основных способов использования АПИ в ваших программах ( от самого простого, когда можно получить предоставить без проблем весь фунционал ТКС пользователю в вашем АПИ, до самого сложно, где вы полностью сами управляете представлением данных пользователю, хотя для его нормального использования требуется еще не малая доработка у нас).