Если можно скиньте пример.
Если можно скиньте пример.
Доброго времени суток. Приобрел фискальный регистратор "Гепард-НТС МФУ" в белорусси. Вот хочу написать небольшую програмку под него ( в универе учил Delphi), можно скинуть примерчик как с ним работать. Я установил ваш драйвер и подключился к нему с помощью FR Tools, хочу завтавить его печатать чеки, но пока не получается. Если возможно скиньте пример как к нему подключиться и заставить печатать чеки. Заранее благодарю.
Re: Если можно скиньте пример.
К cожалению Delphi не знаю, могу накидать на Builder C++
Re: Если можно скиньте пример.
Если не сложно скиньте пример как подключиться и как распечатать ценник на этом устройстве на майл ma1oyby@yahoo.comslan писал(а):К cожалению Delphi не знаю, могу накидать на Builder C++
Re: Если можно скиньте пример.
Зачем же на почту, Вы же обратились на форум, сюда и напишу. Да и возможно другим участникам форума будет интересно
Код: Выделить всё
Variant MSK;
MSK = CreateOleObject(L"MercuryCom.FPDrv1C2");
SAFEARRAY *pArray = 0;
pArray = SafeArrayCreateVector(VT_VARIANT, 0, 6);
Variant *pData = 0;
SafeArrayAccessData(pArray, (void**)&pData);
pData[0] = 4; //порт
pData[1] = 57600; //скорость
pData[2] = WideString(L"0000"); //пароль
pData[3] = 1; //секция для наличных
pData[4] = true; //печатать ли налоги
pData[5] = 11; //протокол
SafeArrayUnaccessData(pArray);
VARIANT_BOOL result;
WideString devID = "", err_descr = "";
long idErr;
result = MSK.OleFunction(L"Подключить", pArray, &devID);
if(result != VARIANT_TRUE){
idErr = MSK.OleFunction(L"ПолучитьОшибку", &err_descr);
}
WideString wpass = L"9999";
MSK.OlePropertySet(L"ПарольКассира", wpass.c_bstr()); //устанавливаем пароль кассира, он предварительно должен быть запрограммирован в ФР (через FRTools либо метод УстановитьПароль)
MSK.OlePropertySet(L"КодТовара", 10); //устанавливаем код товара
WideString wsize = L"шт";
MSK.OlePropertySet(L"ЕдиницаИзмерения", wsize.c_bstr()); //устанавливаем единицу измерения
long checkNum, shiftNum;
result = MSK.OleFunction(L"ОткрытьЧек", devID.c_bstr(),
VARIANT_TRUE, //чек фискальный
VARIANT_FALSE, //не возврат
VARIANT_FALSE, //не аннулирование
&checkNum, &shiftNum);
if(result != VARIANT_TRUE){
idErr = MSK.OleFunction(L"ПолучитьОшибку", &err_descr);
}
else{
WideString wname= L"Стульчик раскладной";
result = MSK.OleFunction(L"НапечататьФискСтроку", devID.c_bstr(),
wname.c_bstr(), //наименование товара
1, //количество
10, //цена
10, //сумма
1, //отдел
0); //налог
result = MSK.OleFunction(L"ЗакрытьЧек", devID.c_bstr(),
10, //наличные
0,
0);
if(result != VARIANT_TRUE){
idErr = MSK.OleFunction(L"ПолучитьОшибку", &err_descr);
}
}