Показано с 1 по 10 из 118

Тема: DLL для FarCards. R-Keeper

Комбинированный просмотр

Предыдущее сообщение Предыдущее сообщение   Следующее сообщение Следующее сообщение
  1. #1
    Новичок
    Регистрация
    07.11.2013
    Адрес
    Алматы
    Сообщений
    4
    Поблагодарил(а)
    0
    Благодарностей: 0 (сообщений: 0)
    Спасибо всем откликнувшимся. В сети нашел FarCards 6.XX и доки к нему. В файле Extdll.txt сказано, что "DLL должна предоставить функции GetCardInfoEx и TransactionsEx".
    пишу вот так:

    Код:
    // Эта функция возвращает информацию о карте
    // результат:
    //
    // 0 - без ошибок, структура Info заполнена
    // 1 - карта не существует
    int GetCardInfoEx(	INT64 card,					// номер карты
    					DWORD UnitNo,				// код ресторана
    					DWORD Restaurant,			// номер кассы
    					CardInfo* CardInfoPointer,  // адрес структуры, которую функция должна заполнить, если карта существует
    					CHAR* InpBuf,				// дополнительная информация от кассы о заказе
    					DWORD InpLen,				// длина информации от кассы
    					WORD InpKind,				// тип информации от кассы (1-XML)
    					CHAR* OutBuf,				// дополнительная ответная информация
    					DWORD OutLen,				// длина ответной информации
    					WORD OutKind)				// тип ответной информации  (2-Pr1me)
    {
    	ofstream myfile;
    	myfile.open ("test.txt");
    	myfile << "Writing this to a file.\n";
    	myfile << "Writing this to a file.\n";
    	myfile << "Writing this to a file.\n";
    	myfile << "Writing this to a file.\n";
    	myfile.close();
    
    
    	return 0;
    }
    Код:
    // Эта функция проводит транзакции для кассового чека// результат
    // 
    // 0 - все транзакции проведены
    // 1 - ни одна транзакция не проведена
    // частичного выполнения быть не должно - либо все проходят, либо ни одна!
    int TransactionsEx( DWORD Count,						// количество транзакций
    					TransactionInfo *transactionList,	// адрес списка, каждый элемент котoрого - ссылка (Pointer) на описание транзакции
    					CHAR* InpBuf,						// дополнительная информация от кассы о заказе
    					DWORD InpLen,						// длина информации от кассы
    					WORD InpKind,						// тип информации от кассы (1-XML)
    					CHAR* OutBuf,						// дополнительная ответная информация
    					DWORD OutLen,						// длина ответной информации
    					WORD OutKind)						// тип ответной информации  (2-Pr1me)
    {
    	ofstream myfile;
    	myfile.open ("test.txt");
    	myfile << "Writing this to a file.\n";
    	myfile << "Writing this to a file.\n";
    	myfile << "Writing this to a file.\n";
    	myfile << "Writing this to a file.\n";
    	myfile.close();
    
    
    	return 0;
    }
    Структуры CardInfo и TransactionInfo объявлены в отдельном cpp файле. Компилируется без проблем, в FARCARDS.INI пишу:
    Код:
    [FarServer]Type = 1
    DLL = kopilka.dll
    Gate = 1
    Log = 1
    
    
    [LinkDLL]
    1 = RNBOPen
    2 = RLocal
    
    
    [RTcp]
    Client1 = Дальний Ресторан
    Server1 = 127.0.0.1
    Port1 = 2222
    
    
    [RNBOpen]
    Server = AServ
    
    
    [RLocal]
    Port = 0
    и ложу kopilka.dll рядом с Farcards.exe. При попытке запустить ничего не происходит. Так и должно быть? Как вообще можно проверить что оно работает?
    Еще раз спасибо всем откликнувшимся.

  2. #2
    Разбирающийся
    Регистрация
    18.10.2012
    Адрес
    Новосибирск, Омск
    Сообщений
    5,362
    Поблагодарил(а)
    188
    Благодарностей: 461 (сообщений: 364)
    Принцип работы FC в режиме 1 (ваш случай)

    На кассе кипера прокатали карту. Кипер передал ее номер в FC и он вызвал процедуру CardInfo из kopilka.dll.

    Процедура отработала (заглянула в вашу БД ли еще куда) заполнила требуемую структуру и вернула ее в FC.

    FC переправил ответ на кассу кипера, и там кассиру показали инфу по карточке (или ошибку "нет такой карты")

    В вашем случае ничего не происходит т.к. нет запроса от кассы и FC не вызывает CardInfo... Дальше без запросов с кассы никуда...

  3. #3
    Гуру Аватар для count
    Регистрация
    17.05.2007
    Адрес
    Shadow
    Сообщений
    369
    Поблагодарил(а)
    1
    Благодарностей: 1 (сообщений: 1)
    29-й пртокол имеет ряд тонкостей.
    Очень рекомендую обратиться к производителю и получить консультацию там.
    no room basic
    system halted...

  4. #4
    Новичок
    Регистрация
    07.11.2013
    Адрес
    Алматы
    Сообщений
    4
    Поблагодарил(а)
    0
    Благодарностей: 0 (сообщений: 0)
    Цитата Сообщение от sibgaba Посмотреть сообщение
    Принцип работы FC в режиме 1 (ваш случай)

    На кассе кипера прокатали карту. Кипер передал ее номер в FC и он вызвал процедуру CardInfo из kopilka.dll.

    Процедура отработала (заглянула в вашу БД ли еще куда) заполнила требуемую структуру и вернула ее в FC.

    FC переправил ответ на кассу кипера, и там кассиру показали инфу по карточке (или ошибку "нет такой карты")

    В вашем случае ничего не происходит т.к. нет запроса от кассы и FC не вызывает CardInfo... Дальше без запросов с кассы никуда...
    А разве FC не должен хотя бы просто запущенным в процессах висеть? Проблема в том, что он даже не запускается.

    ---------- Добавлено в 09:21 ---------- Предыдущее сообщение было размещено в 09:21 ----------

    Цитата Сообщение от count Посмотреть сообщение
    29-й пртокол имеет ряд тонкостей.
    Очень рекомендую обратиться к производителю и получить консультацию там.
    Спасибо за рекомендацию. Уже написал им.

  5. #5
    Разбирающийся
    Регистрация
    18.10.2012
    Адрес
    Новосибирск, Омск
    Сообщений
    5,362
    Поблагодарил(а)
    188
    Благодарностей: 461 (сообщений: 364)
    Цитата Сообщение от asdForever Посмотреть сообщение
    А разве FC не должен хотя бы просто запущенным в процессах висеть? Проблема в том, что он даже не запускается.
    А вы его как запускаете? Наверное просто Farcards.exe ?

    Надо или Farcards.exe /desktop - запустится как приложение
    или Farcards.exe /install - поставится служба

  6. #6
    Разбирающийся
    Регистрация
    18.10.2012
    Адрес
    Новосибирск, Омск
    Сообщений
    5,362
    Поблагодарил(а)
    188
    Благодарностей: 461 (сообщений: 364)
    FC 4.01 (какой был под рукой, но для тестов сойдет)
    FC401.rar

  7. #7
    Новичок
    Регистрация
    01.02.2014
    Адрес
    спб
    Сообщений
    1
    Поблагодарил(а)
    0
    Благодарностей: 0 (сообщений: 0)
    Всем привет!
    Не хочу плодить тем, у меня почти такая же ситуация как и у asdForever, поручили исследовать возможность интеграции нашей системы лояльности с rkeeper->farcards, поскольку необходимого окружения под рукой нет, прошу помощи разобраться.

    1) r-keeper работает только с дисконтными картами? Что передастся в метод GetCardInfoEx если прокатывать банковскую карту?
    2) можно ли настроить r-keeper так, что бы тот передавал в TransactionsEx и GetCardInfoEx полные паны банковских карт?

  8. #8
    Новичок
    Регистрация
    05.04.2011
    Адрес
    Moscow
    Сообщений
    20
    Поблагодарил(а)
    0
    Благодарностей: 0 (сообщений: 0)
    Цитата Сообщение от grifon Посмотреть сообщение
    1) r-keeper работает только с дисконтными картами? Что передастся в метод GetCardInfoEx если прокатывать банковскую карту?
    2) можно ли настроить r-keeper так, что бы тот передавал в TransactionsEx и GetCardInfoEx полные паны банковских карт?
    Вот тут ответы почти на все вопросы
    http://www.carbis.ru/forum/Персональ...x_len-dll.html

Похожие темы

  1. Rk7 + Farcards 4.*
    от VampireKB в разделе Скидки и дисконтные системы в R-Keeper 7
    Ответов: 2
    Последнее сообщение: 26.09.2012, 22:53
  2. GetCardInfo и FarCards
    от Fromru в разделе Персональная Дисконтная Система (ПДС)
    Ответов: 2
    Последнее сообщение: 30.05.2011, 14:15
  3. FarCards ошибка
    от vgik в разделе Персональная Дисконтная Система (ПДС)
    Ответов: 4
    Последнее сообщение: 18.01.2010, 16:27

Ваши права

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