Показано с 1 по 7 из 7

Тема: Поделитесь хедером с процедурами и функциями csclink.dll

  1. #1
    Новичок
    Регистрация
    05.04.2011
    Адрес
    Moscow
    Сообщений
    20
    Поблагодарил(а)
    0
    Благодарностей: 0 (сообщений: 0)

    Поделитесь хедером с процедурами и функциями csclink.dll

    Говорят, что на закрытом форуме ucs есть такая инфа. Список экспорта из csclink.dll у меня есть, но какие параметры они принимают и что отдают - загадка. Хочется написать dll для farcards под систему лояльности и не отказываться при этом от нашей внутренней системы, логику работы с дисконтными картами написал, а вот с csclink.dll затык получился.

  2. #2
    Разбирающийся Аватар для VampireKB
    Регистрация
    27.03.2007
    Адрес
    Moscow City
    Сообщений
    2,854
    Поблагодарил(а)
    0
    Благодарностей: 17 (сообщений: 11)
    зачем городить огород ?
    Еще есть тут
    Хотите БЕСПЛАТНЫЙ кипер ? http://www.techrk.ru/?cat=17
    Также доступен ФТП !! ftp://techrk.ru
    Теперь возможно произвести покупку ПО через терминалы Qiwi.Подробности на сайте

  3. #3
    Новичок
    Регистрация
    05.04.2011
    Адрес
    Moscow
    Сообщений
    20
    Поблагодарил(а)
    0
    Благодарностей: 0 (сообщений: 0)
    Цитата Сообщение от VampireKB Посмотреть сообщение
    зачем городить огород ?
    Еще есть тут
    Спасибо, я выиграл спор - сказал коллеге, что первый ответ будет от Вас с предложением приобрести ЦПДСС, он не поверил
    Уверен, что у Вас то имеется то, что мне нужно, если не хотите делиться, то давайте меняться: я Вам деньги, Вы мне - инфу?

  4. #4
    Разбирающийся Аватар для VampireKB
    Регистрация
    27.03.2007
    Адрес
    Moscow City
    Сообщений
    2,854
    Поблагодарил(а)
    0
    Благодарностей: 17 (сообщений: 11)
    Цитата Сообщение от ozyab Посмотреть сообщение
    я Вам деньги, Вы мне - инфу?
    не интересует.
    Так вы будете пинать корыто год,а с инфой по фаркарду всего месяцев 8.(учитывая ваше незнание логики работы кипера)

    Зато глюки интересные схватите :_) Клиентов довольными сделаете :-) (Любая ошибка программы - это плюс клиенту ,и минус Вам )
    Хотите БЕСПЛАТНЫЙ кипер ? http://www.techrk.ru/?cat=17
    Также доступен ФТП !! ftp://techrk.ru
    Теперь возможно произвести покупку ПО через терминалы Qiwi.Подробности на сайте

  5. #5
    Новичок
    Регистрация
    05.04.2011
    Адрес
    Moscow
    Сообщений
    20
    Поблагодарил(а)
    0
    Благодарностей: 0 (сообщений: 0)
    Цитата Сообщение от VampireKB Посмотреть сообщение
    не интересует.
    Так вы будете пинать корыто год,а с инфой по фаркарду всего месяцев 8.(учитывая ваше незнание логики работы кипера)

    Зато глюки интересные схватите :_) Клиентов довольными сделаете :-) (Любая ошибка программы - это плюс клиенту ,и минус Вам )

    Сказал, как отрезал )))
    да будет так, аминь

  6. #6
    ТВОРЕЦ СЧАСТЬЯ Аватар для SH
    Регистрация
    29.11.2006
    Сообщений
    18,069
    Поблагодарил(а)
    481
    Благодарностей: 192 (сообщений: 165)
    Говорят, что на закрытом форуме ucs есть такая инфа.
    Врут.
    Лежит себе спокойно в дистрибутиве:

    unit CscInt;

    {
    Модуль импорта из CscLink.DLL ver. 1.25

    Если результат выполнения функций отрицательный,
    то текст ошибки можно получить функцией GetErrorText: PChar;
    }

    interface

    uses Windows;

    {получить версию CscLink.dll}
    Function Version: PChar; stdcall;

    {получить версию протокола Cardserv-а (функция работает в любой версии)}
    Function GetProtocol( var Protocol: Word ): BOOL; stdcall;

    {текст произошедшей ошибки}
    Function GetErrorText: PChar; stdcall;

    {выполнить подключение к серверу}
    Function Login( AUser, APsw: PChar ): BOOL; stdcall;

    type
    {информация о карте для применения на кассе}
    TCardUseInfo = packed record
    Size : Word; // Size of TCardUseInfo - заполнить перед вызовом
    Account : Integer; // номер счёта
    Holder : Array[0..40] of Char; // ФИО
    Active : BOOL; // карта активна?
    WithMngr : BOOL; // применять с подтверждением менеджера?
    Expired : BOOL; // истёк срок действия?
    Locked : BOOL; // карта заблокирована?
    Seize : BOOL; // карту изъять?
    WhyLocked : Array[0..255] of Char; // причина блокировки - asciiz
    Unpay : Integer; // тип неплательщика
    Discount : Word; // номер скидки
    Bonus : Word; // номер бонуса
    CanPay : Comp; // сколько можно снять сейчас денег с карты
    DiscLimit : Comp; // предел суммы скидки
    Sum1 : Comp; // остаток на счёте
    Sum2 : Comp; // остаток на счёте 2 (для Farcards)
    Sum3 : Comp; // остаток на счёте 3 (для Farcards)
    Sum4 : Comp; // остаток на счёте 4 (для Farcards)
    Sum5 : Comp; // остаток на счёте 5 (для Farcards)
    end;

    {получить информацию о карте для применения на кассе}
    Function GetCardUseInfo( Card: Int64; RestCode, UnitNo: Integer; var Info: TCardUseInfo ): BOOL; stdcall;

    {получить номер счёта по номеру карты}
    Function GetAccountNumber( Card: Int64; var Account: Integer ): BOOL; stdcall;

    {получить назначенное на счёт сообщение}
    Function GetAccountMessage( Account: Integer; var Msg: PChar ): BOOL; stdcall;

    {установить сообщение на счёт}
    Function SetAccountMessage( Account: Integer; const Msg: PChar ): BOOL; stdcall;

    type
    {процедура обратного вызова для записи информации, полученной от сервера}
    TFWrite = Procedure( Data: Pointer; Size: Integer ); stdcall;

    {получить назначенное на счёт изображение}
    Function GetAccountImage( Account: Integer; Proc: TFWrite ): BOOL; stdcall;

    type
    {информация о счёте}
    TAccountInfo = packed record
    Size : Word; // SizeOf( TAccountInfo )
    Account : Integer; // номер счёта
    Card : Int64; // номер карты
    Holder : Array[0..40] of Char; //ФИО
    Scheme : Byte; {тип счёта:
    0 - ручное пополнение без ограничения оплат
    1 - автоматическое пополнение без ограничения оплат
    2 - автоматическое пополнение с лимитом оплат на один день
    3 - автоматическое пополнение с лимитом оплат на неделю
    4 - автоматическое пополнение с лимитом оплат на месяц
    5 - ручное пополнение с лимитом оплат на один день
    6 - ручное пополнение с лимитом оплат на неделю
    7 - ручное пополнение с лимитом оплат на месяц
    }
    Offered : Integer; // дата выдачи (0 -> 30/12/1899)
    {*} Expired : Integer; // срок действия
    {*} Birthday : Integer; // день рождения
    Deleted : BOOL; // счёт удален?
    {*} Locked : BOOL; // карта заблокирована?
    {*} Seize : BOOL; // карту изъять?
    {*} WhyLocked : Array[0..255] of Char; // причина блокировки - asciiz
    Discount : Word; // номер скидки
    {*} Bonus : Word; // номер бонуса
    PayLimit : Comp; // лимит оплат для счетов c лимитом
    {*} Female : BOOL; // пол
    Folder : Word; // идентификатор отдела
    Unpay : Integer; // номер неплательщика
    {*} Tel1 : Array[0..15] of Char; //телефон 1
    {*} Tel2 : Array[0..15] of Char; //телефон 2
    {*} Email : Array[0..255] of Char;
    {*} Address : Array[0..255] of Char;
    {*} DopInfo : Array[0..255] of Char; //произвольная информация - asciiz
    Balance : Comp; // для карт с ручным пополнением - текущий остаток
    end;

    {получить информацию о счёте}
    Function GetAccountInfo( Account: Integer; var Info: TAccountInfo ): BOOL; stdcall;

    {Изменить параметры счёта. Изменяются параметры, помеченные знаком (*).
    Перед вызовом сперва заполнить Info вызовом GetAccountInfo()}
    Function SetAccountInfo( const Info: TAccountInfo ): BOOL; stdcall;

    type
    TTransactionInfo = packed record
    Size : Word; // Size of TTransactionInfo - заполнить перед вызовом
    Kind : Word; // 0-оплата 1-скидка 2-бонус 3-потраты гостя
    Summa : Comp; // сумма в копейках
    RestCode : Word; // код ресторана
    LogDate : Integer; // дата чека (0 -> 30/12/1899)
    UnitNum : Byte; // номер кассы
    CheckNo : Integer; // номер чека
    Comment : Array[0..255] of Char; //комментарий - для ручных транзакций
    end;

    {осуществить кассовую транзакцию. Summa > 0 - прямое действие, Summa < 0 - отмена}
    Function CashTransaction( Account: Integer; const Info: TTransactionInfo ): BOOL; stdcall;

    {взнос денег на счёт, если сумма отрицательная - изъятие денег}
    Function HandTransaction( Account: Integer; Sum: Comp; Comment: PChar ): BOOL; stdcall;

    type
    {процедура обратного вызова для перечисления счетов}
    TEnumAccounts = Procedure( const Info: TAccountInfo ); stdcall;

    {возврат всех счетов}
    Function GetAllAccounts( Proc: TEnumAccounts ): BOOL; stdcall;

    type
    {процедура обратного вызова для перечисления папок}
    TEnumFolders = Procedure( Id, ParentId: Integer; Deleted: Boolean; Name: PChar ); stdcall;

    {возврат всех папок}
    Function GetAllFolders( Proc: TEnumFolders ): BOOL; stdcall;

    type
    {Процедура обратного вызова для перечисления найденных карт.
    Cсылка Holder теряется после выхода из процедуры!}
    TEnumFindAccounts = Procedure( Account: Integer; Card: Int64; Holder: PChar ); stdcall;

    {поиск карт и владельцев по маске, результаты поиска возвращаются через процедуру Proc}
    Function FindAccounts( Mask: PChar; Proc: TEnumFindAccounts ): BOOL; stdcall;

    type
    {процедура обратного вызова для перечисления транзакций}
    TEnumTransactions = Procedure( Account: Integer; When: TDateTime; const Info: TTransactionInfo ); stdcall;

    {перечислениe транзакций по счёту, результаты возвращаются через процедуру Proc}
    Function GetAccountTransactions( Account: Integer; DateFirst, DateLast: TDateTime; Proc: TEnumTransactions ): BOOL; stdcall;

    {перечисление всех транзакций, результаты возвращаются через процедуру Proc}
    Function GetAllTransactions( DateFirst, DateLast: TDateTime; Proc: TEnumTransactions ): BOOL; stdcall;

    type
    {процедура обратного вызова для перечисления изменений скидки и бонуса карты
    в соответствии с ее текущим раписанием}
    TEnumDBVar = Procedure( Start: TDateTime; Disc, Bonus: Integer ); stdcall;

    {перечисления изменений скидки и бонуса карты в соответствии с ее текущим раcписанием.
    результаты поиска возвращаются через процедуру Proc}
    Function GetHistL( Card: Int64; Start, Stop: TDateTime; Proc: TEnumDBVar ): BOOL; stdcall;

    {отключение от сервера}
    Procedure Done;

    implementation

    const
    DllName = 'CscLink.DLL';

    Function Version; external DllName;
    Function GetProtocol; external DllName;
    Function Login; external DllName;
    Function GetErrorText; external DllName;
    Function GetCardUseInfo; external DllName;
    Function GetAccountNumber; external DllName;
    Function GetAccountMessage; external DllName;
    Function SetAccountMessage; external DllName;
    Function GetAccountImage; external DllName;
    Function GetAccountInfo; external DllName;
    Function SetAccountInfo; external DllName;
    Function CashTransaction; external DllName;
    Function HandTransaction; external DllName;
    Function GetAllFolders; external DllName;
    Function FindAccounts; external DllName;
    Function GetAllAccounts; external DllName;
    Function GetHistL; external DllName;
    Function GetAccountTransactions; external DllName;
    Function GetAllTransactions; external DllName;
    Procedure Done; external DllName;

    end.
    Алексей Аркадьев

    Когда заказчик ищет волшебника, то чаще всего он находит сказочника.
    Если у Вас есть вопрос по поддержке - напишите его на форуме, я обязательно отвечу, если знаю ответ.
    Если Вам нужны какие-то файлы, пишите на почту: support@carbis.ru, но вначале посмотрите в разделе для скачивания.
    Для коммерческих вопросов:
    +7 (495) 740-49-91, или на почту: sales@carbis.ru

  7. #7
    Новичок
    Регистрация
    05.04.2011
    Адрес
    Moscow
    Сообщений
    20
    Поблагодарил(а)
    0
    Благодарностей: 0 (сообщений: 0)
    Алексей, респектище!!!

Похожие темы

  1. Поделитесь fix_len.dll
    от Barzometr в разделе R-Keeper 6
    Ответов: 5
    Последнее сообщение: 29.06.2017, 23:13
  2. Поделитесь RTL8111E
    от virusnjk в разделе Файлообменник для пользователей
    Ответов: 3
    Последнее сообщение: 05.11.2015, 17:04
  3. Поделитесь кто нибудь pos.dll
    от sancha78 в разделе Файлообменник для пользователей
    Ответов: 4
    Последнее сообщение: 07.12.2011, 14:49
  4. Поделитесь dll для перезагрузки ....
    от Andy в разделе Файлообменник для пользователей
    Ответов: 3
    Последнее сообщение: 14.10.2011, 14:36
  5. Работа с процедурами SH4 через OLE
    от kwazimodo в разделе OLE и обмен данными с 1С
    Ответов: 0
    Последнее сообщение: 22.04.2011, 17:48

Ваши права

  • Вы не можете создавать новые темы
  • Вы не можете отвечать в темах
  • Вы не можете прикреплять вложения
  • Вы не можете редактировать свои сообщения
  •