ПРОДАЖИ
+7 (991) 312-04-37
trade@bestnet.ru
Авторизация

Логин:
Пароль:
Забыли свой пароль?
Регистрация
ВАШ ВОПРОС

Доступ к Личному кабинету закрыт!
Как получить доступ?


Форум

Поиск  Пользователи  Правила 
Закрыть
Логин:
Пароль:
Забыли свой пароль?
Регистрация
Войти
 
Выбрать дату в календареВыбрать дату в календаре

Страницы: 1
Пример из справочного руководства, странный пример из справки
 
Рылся в "BESTXBA. Справочное руководство", читал про DBTable. В конце описания нахожу странный пример:

ПРИМЕР ИСПОЛЬЗОВАНИЯ МЕТОДОВ КЛАССА DBTable:
LOCAL csql,rec,a

cSql := "SEL ECT A.f1,A.f2,A.f3,A.f4,A.f5,B.name1,B.name2" ;
+" FR OM yn17 as A INNER JOIN yn18 AS B ON A.f3==B.idyn" ;
+" order by 1"

rec := cSQLRecord():new() //создать обьект
rec:Open(PublicVars():LoadPath() + "BEST5.DBC" , cSql) //выполнить SQL

a:=rec:dbstruct // получить массив,описывающий структуру результата выборки
for i:=1 to rec:fcount
? a[i,1],a[i,2],a[i,3],a[i,4] //напечатать описание полей
next
? "RecCount="+str(rec:reccount) //напечатать количество записей в выборке

do while(!rec:eof)
// напечатать номер записи и все поля
? rec:recno, rec:FieldValue(1), rec:FieldValue(2), rec:FieldValue(3);
, rec:FieldValue(4), rec:FieldValue(5)
rec:skip(1)
enddo
// распечатать записи с позизионированием в процентном выражении
for i := 20 to 100 step 20
rec:GoPosition( i )
? rec:recno, rec:FieldValue(1), rec:FieldValue(2), rec:FieldValue(3);
, rec:FieldValue(4), rec:FieldValue(5)
j++
next

rec:close()
rec:destroy()

Не понял как он связан с DBTable, но очень заинтересовал. Проблема в том, что не работает. Компилируется нормально.
А при попытке запуска дает ошибку.

Изменено: Данила Кошевой - 17.09.2015 12:32:58
Запрос к БЭСТ. Ошибка.,
 
Здравствуйте

Пытаюсь перенести запрос написанный в среде MS SQL Server на БЭСТ Fastreport. Вроде бы все исправил под FoxPro, Case заменил на IIF . Не пойму в чем проблема. Какой еще ACTIVATECELL? - Не знаю таких.



sel ect iif(left(dt_schet,2)='51',dt_schet,kt_schet)
,MONTH(dataoper)
,iif(left(dt_schet,2)='51',left(kt_schet,2),left(dt_schet,2)) as kor
,sum(iif(left(dt_schet,2)='51',summa,0)) as kto
,sum(iif(Left(dt_schet,2)='51' ,0 ,summa )) as dto
fr om [main]
where dataoper>ctod('01.02.2015') and ( (left(dt_schet,2)='51') or (left(kt_schet,2)='51'))
group by iif(left(dt_schet,2)='51',dt_schet,kt_schet)
,MONTH(dataoper)
,iif(left(dt_schet,2)='51',left(kt_schet,2),left(dt_schet,2))
order by MONTH(dataoper), kor
Изменено: Данила Кошевой - 05.02.2015 11:45:30
Как правильно создать проводки в главной книге?
 
Здравствуйте.

Мне нужно через плагин создавать проводки в главной книге, и хочется сделать правильно. У меня такое ощущение, что я где то видел класс для работы с проводками, толи на форуме, толи в исходниках, не помню.
событие "Вход в документ" плагин срабатывает только один раз
 
Здравствуйте.
Пишу плагин для подмены справочника аналитики корреспондирующего счета в П/О кассы.
Подменяет при условии что создается новый П/О и использована типовая операция с кодом 000.
Плагин подключен на событие «Вход в документ». БЭСТ5 3,4 SP 14

Проблема в том, что работает это только один раз. Захожу в реестр ордеров, жму F4, заполняю, сохраняю, все срабатывает как задумано. При создании второго документа не чего не подменяет и ошибок не выдает, все работает как без плагина. На второй раз уже не срабатывает пока не перезайду в реестр. Не пойму в чем дело.


PUBLIC ubGets

IF napp=2

IF SELECT('urefer') = 0

NETUSE('urefer',LoadPath()+'urefer')

select k_order

ENDIF

urefer->(MAKEREFER("usanalit","Ñïðàâî÷íèê ìàãàçèíîâ ",3,;

{"Êîä ","Ïðåäïðèÿòèå"," Íàèìåíîâàíèå"},;

{3,5,14},"n/w,w+/n",{"code"},{"aIn[7]"},"UPPER(aIn[7])",;

{{||FIELD->Code},{||LEFT(FIELD->Namep,30)},{||LEFT(FIELD->Names,30)}},,,,,,,;

,,,,,,,,,,'cFind$UPPER(Names)',,,,,,,,,,,,,,,,,,,,;

'NAMEs') )

ubGets:=globalgetlist[11]:reader

globalgetlist[10]:postblock:={||globalgetlist[11]:reader:=if(PTYPOPER='000'.and.CCTYPE='Ï/Î',{|oget| ReferGetReader(oget,'usanalit')},ubGets) }

ENDIF
Изменено: Данила Кошевой - 17.08.2013 10:29:22
Замена стандартных форм и справочников
 
Доброго времени суток!
Писал хот лайн, но что то третий день тишина. Подскажите пожалуйста

В справочном руководстве по программированию, в описании событий написано: «
Специальные события для конкретных реестров разрабатываются специально именно для каждого из этих реестров. Пока известно только одно такое событие: подмена прайс-листа при выписке заказа и накладной на реализацию.»

В БЭСТе, в указанных разделах я ничего подобного не нашел. А как рас интересует подмена прайс листа. Я Плохо искал? Или там имелось ввиду использование события «Работа в реестре»?

Если не сложно напишите способы подмена стандартных форм и справочников.


И не могли бы немного объяснить как правильно использовать событие «Работа в реестре».

Допустим плагин выводит дополнительную информация о текущей позиции. Смущает один момент. Получается так, что плагин срабатывает даже когда пользователь ничего не делает(не перемещает курсор по реестру). Как это отразится на производительности? Пользователь встал на нужную строку и анализирует доп. информацию которую вывел плагин. Как бы плагин свою работу сделал и свободен по идее, а БЭСТ выполняет его снова и снова. Мое мнение правильней было бы вызывать плагин при перемещении по реестру.
Возможно я чтото напутал и не прав.
Модуль отдельным окном во весь экран.
 
Всем здрасти.

Напишу и тут. В общем Вопрос есть. Может кто знает?

Иногда,у моих операторов, каким то образом (сами не знают как) получается развернуть окно модуля Товары на весь экран. т.е . Поверх иконок и главного меню(Файл,Вид,....), а не как обычно внутри основной программы.
Не могу понять как они это делают, горячие клавиши есть может?
Очень нужно знать как это сделать.
Модуль отдельным окном во весь экран.
 
Всем здрасти.

Напишу и тут. В общем Вопрос есть. Может кто знает?

Иногда,у моих операторов, каким то образом (сами не знают как) получается развернуть окно модуля Товары на весь экран. т.е . Поверх иконок и главного меню(Файл,Вид,....), а не как обычно внутри основной программы.
Не могу понять как они это делают, горячие клавиши есть может?
Очень нужно знать.
переход на защиту без ключа, Требуется консультация
 
Здравствуйте.

Требуется консультация разработчиков.
Переносим все сервера на виртуальные машины(конкретно Hyper-V). Как известно там отсутствует поддержка USB. Ваши партнеры в Новосибирске предупредили об некоторых ограничениях при отказе от ключа. И с их слов я понял, что из за привязки к оборудованию ,на виртуальной машине не получится работать без ключа. Так ли это? Если все таки можно установить, то какие нюансы если в будущем я начну переустанавливать серверную часть, или переносить на другую виртуальную машину? Мне сказали можно не больше 3 раз год.
И снова вылет.
 
Всем здрасти! Подскажите в чем может быть проблема.

Бэст4 SP43 Win2003 SP2 20 пользователей в терминале.

Уже не первый раз у операторов на приходе вылетает БЭСТ. Обычно уже под конец фактуры под двухсотую позицию. LOG приложил.
отчеты в excel, проблема с полями
 
Всем здрасти!
При передачи отчетов в Excel, БЭСТ делает поля равными 0мм(по умолчанию). В настройках БЭСТа можно сделать что бы поля не обнулялись а оставались по умолчанию для Excel(по умолчанию обычно 2см).
Имеется упрямый лазерный принтер (Samsung 4220) который в отличии от большинства своих собратьев, печатает без полей. т.е. если в документе стоит левое поле 0, значит и на бумаге не будет отступа. До этого я не видел не одного лазерного принтера способных на такое,у всех как минимум отступ 5мм.

Проблема вот в чем. Бухгалтера жалуются, что из за отсутствия отступа невозможно подшить документы. Я им настроил БЭСТ чтобы поля не обнулялись, появилась другая проблема т.к. поля в Excelе по умолчанию не маленькие(2см), отчеты перестали влазить на страницу. Естественно каждый раз раздвигать правое поле в ручную людей не устраивает.

Эту проблему я попытался решить так. Создал для Excel шаблон в котором установил нужные поля и засунул в папку автозапуска, чтобы он при создании чистой книги использовал его настройки. Как бы Excel шаблон принял, при создании новой книги он ставит поля которые мне нужны. Но вот в решение проблемы это не помогло.. Похоже когда БЭСТ создает OLE объект, пользовательский шаблон игнорируется, и поля остаются 2см.

Даже не знаю что еще придумать. В принтере печать без полей не отключается.
Изменено: Данила Кошевой - 02.09.2010 13:29:16
Не могу дать ума Makerefer БЭСТ4+
 
Здравствуйте!
Создаю справочник на основе mlabel.
Проблема собственно вот в чем. В режиме редактирования своих данных, не получается сделать так чтобы при вызове справочника сразу выбиралась позиция которая уже была введена. Выбирается самая последняя запись в справочнике.

Подскажите пожалуйста, что не так. Заодно может кто нибудь знает как в моем случае сделать поиск в справочнике по первым буквам Наименования ?

_MLABEL->( MAKEREFER("MLABEL","Номенклатурный справочник",3,;
{"Группа","Номенклатурный №"," Наименование "},{4,6,12},"n/w,w+/n",;
{"NNUM","NAME"},{"aIn[5]","aIn[6]"},"UPPER('1'+aIn[4]+aIn[6])",;
{{||FIELD->GRUP},{||FIELD->NNUM},{||LEFT(FIELD->NAME,40)}};
,,,,,,,;
{||_mlabel->(setscope("MLAB_ST",""+aIn[4]))},{||_mlabel->(setscope())};
,,,,,,,,,'cFind$UPPER(NAME)';
,'MLAB_ST',,,,,,,,,,,,,,,,,,,) )
Изменено: Данила Кошевой - 02.12.2009 10:59:37
ВИРУС НА САЙТЕ BESTNET.RU, ВИРУС НА САЙТЕ BESTNET.RU
 
:rupor:
БЭСТ4+ SQl запрос, не могу понять в чем проблема с UNION
 
Всем здрасти!

Делаю простейший запрос:

sel ect m.nndoc as FULLNAME,
m.dataoper as DATEOPER,
m.nndoc as NUMDOC,
m.nameoper as NAMEOPER,
m.dt_schet as KORRSCHET,
m.dt_code as KORRANAL,
m.summa as SUMM


fr om main m
where m.dataoper>=:dbp and m.dataoper<=:dep and m.kt_schet='7401'

uni on

sel ect m.nndoc as FULLNAME,
m.dataoper as DATEOPER,
m.nndoc as NUMDOC,
m.nameoper as NAMEOPER,
m.kt_schet as KORRSCHET,
m.kt_code as KORRANAL,
m.summa as SUMM

fr om main m
where m.dataoper>=:dbp and m.dataoper<=:dep and m.dt_schet='7401';

в результате ош ишибка, подскажите где я ошибаюсь
Ошибка при сохранении фактуры
 
Доброго времени суток.

БЭСТ 5 3.4 19 SP

При сохранении фактуры начала выскакивать ошибка, с последующим вылетом в главное меню БЭСТа. По рассказам бухгалтера документ все-таки сохраняется но при формировании отчетов получается что на тех фактурах где появлялась ошибка идет за двоение.


Помогите разобраться из за чего может быть такая ошибка.

Чуть не забыл :sad: Ошибка появляется не всегда, примерно 1 раз из 4.
Изменено: Данила Кошевой - 17.06.2009 06:08:14
БЭСТ5 + терминал + старые компы = тормоза (не понятное поведение)
 
Здравствуйте.
Сервер
2x Xeon 5130
4gb памяти
4x Scsi 73gb raid 10

Windows 2003 server Sp2
Best5 3.4 сервер/ клиент
также на сервере установлены SQL2000 SP4 и I.S.C.R.A. framefork котороя работает с Базами БЭСТ 4.
Пользователи работают на сервере в терминале.

При работе в терминале обнаружил очень интересный и неприятный глюк в БЭСТ5. У нас парк компов 75шт. Естественно среди них есть всякие и Пеньтиумы I c 32mb памяти и Целероны 700 – 900…… естественно и современный 2х ядерные имеются..

Так вот собственно проблема вот в чем. После того как пользователи месяц другой поработали на «новом» для них БЭСТ5, на меня стали сыпаться Вопросы и жалобы ... типа “Почему у «Маши» БЭСТ5 работает быстрее чем у меня» или «Почему у нёё всё тормозит а на моём нормально». Я сначала не понял говорил что быть того не может, вы же все в терминале работаете т.ё. скорость должна быть примерно одинаковая (все равны)..
Начал разбираться и действительно обнаружил что у тех у кого компьютер более менее современный «Пятерка» работает очень комфортно а тех у кого что то на подобии Целерона 700 и даже 2000 все ужасно тормозит. Потом меня попросили поставить БЭСТ 5 в Терминале на Пеньтиум I – это просто ужас, настоящее Слайд-шоу.

И так. Потратил на разборки всего этого 3 дня, решения так и не нашел почему на старых компах хоть и в терминале так тормозит а на новых нет, но выяснил что:

1. Тормозит не весь Бэст5 а именно любые реестры документов (к примеру когда ходишь по списку счет фактур в «Товарах и готовой продукции» или по списку проводок в Главной книге и все тому подобное) само меню дизайнер отчетов работают нормально у ВСЕХ.
2. (и самое интересное) проверял на пентиуме первом для верности. Заходишь в любой реестр(естественно работало так как будто запустили на пиньке I «Пятерку» локально т.е. передвижение по списку не более 1 позиции в секунду)
потом беру и закрываю терминальное окно (т.е. не завершаю сессию)
заново захожу в терминал открывается все на том же месте как я оставил , и ВОТ ОНО ЧУДО - все ЛЕТАЕТ. Но как только переключаешься на другую программу и назад на бест или просто даже в самом Бэсте на меню и назад, всё все сного начинает тормозить.
3. Как я выяснил опытным путем оказывается тормозит и на самых крутых комах, просто на них это почти не заметно. Проверил это очень просто: Зашел реестр счет фактур, кажется что все нормально работает. Встаю в начало списка. Беру засекаю 20 сек. Зажимаю кнопку «Вниз» и потом смотрю до какой счет фактуры за 20 сек я доскакал. Потом проделаваю операцию с закрытием терминального окна описанную в п.2 . сного встаю в начало этого же списка, засекаю 20 сек. В итоге минимум в 2 РАЗА ДАЛЬШЕ успеваю пройти.
4. Дело не в компах и не в настройке Терминального сервера (перепробовал всё, перелопатил кучу литературы) потому что все остальные программы на том же бедном Пиньке первом работают великолепно.


Также просил товарищей у кого есть БЭСТ5 проверить у себя - эффект тот же!
Просил проверь ребят в фирме которая обслуживается у нас БЭСТ – хоть у них и нет таких слабых компов но они проверяли с насеканием времени – эффект такой же как у меня.

Извиняюсь если много лишнего написал но хочется чтобы все точно поняли в чем проблема.
Дорогие разработчики прошу как-нибудь прокомментировать данную проблему в БЭСТе 5.
проблему лично мне надо решить 100% т.к. основную нашу Базу надо уже переводить на «Пятерку» а старых компов много я боюсь что меня покарают.

Уважаемы коллег и участников форума те кто работает с БЭСТ5 в терминале прошу проверить у себя так как описано п.3 .

С уважением Данила
Изменено: Данила Кошевой - 15.05.2009 06:35:11
Версии Fastreport в БЭСТ
 
Хотим перейти на БЭСТ5.
Но в нашей организации очень много матричных принтеров т.к. огромный объем печати.
Большинство из них современные и win печать в принципе неплохая по скорости, но все равно в два раза медленней DOS печати.

Начиная с FastReport 3 появился специальный тип отчета и инструменты для его создания для печати на матричных принтерах.

!!!Текущая версия использующаяся в качестве платформы для создания отчетов в БЭСТ FastReport 2.5.

Вопрос ТАКОЙ: планируется ли? или может быть есть возможность в БЭСТ использовать новые версии FastREPORT?
Страницы: 1