На сегодняшний день коммерческим организациям предлагается вариант легализации лицензионных прав на ПО - переход информационной системы ПРЕДПРИЯТИЯ на LINUX с поддержкой 1С от компании ETERSOFT.
К моему сожалению, БЭСТ (БЕСТ5 гораздо обходящая по своим параметрам продукты 1С - ИМХО) опять теряет стратегическую инициативу.
Хотят люди работать в LINUX'e, а выбор у них только один - опять же 1С.
Очередная волна информатизации коммерческих предприятий еще дальше отодвинет продукты компании БЭСТ от конечных потребителей.
Очень-очень жаль.
с фильтром картотеку не распечатывает только на складах с учетом по партиям
есть один склад
там все тмц без партий
и печать отфильтрованной картотеки выходит нормально
в печатной форме непонятно как работает код
Код
If [LENGTH(DialogForm.DataSet2."Фильтр реестра")>0] Then
Begin
reestr.Params['Фильтр'] := [REPLACE([DialogForm.DataSet2."Фильтр индекса реестра"], '->', '.')];
reestr.Params['Фильтр'] := [REPLACE(reestr.Params['Фильтр'], 'MSCHET', 'Q')];
reestr.Params['Фильтр'] := [REPLACE(reestr.Params['Фильтр'], 'STATUS', 'R.STATUS')];
End;
нет не штатно
поставил сп 08 и 09
теперь пустой отчет с шапкой
хотя на демо базе с фильтром по количеству отчет выводится нормально
на нашей рабочей - пустой отчет
при печати картотеки складского учета -
"
При открытии reestr возникла ошибка:
form_sclad_kart_sclad.openarea \\compname\BEST534\Pro\DataSource\form_sclad.vct Error in line 99 1832
"
ошибка проявляется только при попытке печати картотеки с установленным фильтром
теперь заработало
только на
win xp pro sp2
и
на win xp home sp2
изначально стоит
"Предотвращение выполнения данных" в значении:
"Включить DEP только для основных программ и служб WINDOWS"
без всяких иключений
работает под wine от ETERSOFT
КЛЮЧ ВИДИТ
печать пока только из печатных форм по F12
с ключом были проблемы
тот дистрибутив что идет в поставке БЭСТа работает только на ASP-IV-server
на новых ключа не видно
у меня так:
на рабочем файловом SAMBA серваке с ASP-IV-server стоит USB-ключ с штатными (из поставки БЭСТа) дровами и сервером ключа
а на другом тестовом компе БЭСТы-4 12.01 под WINE@ETERSOFT РАБОТАЮТ и прекрасно ключ видят по сети
на тестовом компе стояли и Novell SUSE Enterprise
и Open SUSE10.3 и Mandriva2007 и Ubuntu - какой-то самый последний
в принципе под всеми новыми линухами BEST4 С WINE@ETERSOFT работает более или менее
Вот только с ключом пока не доработал.
С компании rainbow прислали новые дрова и сервер ключа для новых дистрибутивов.
Но еще не успел попробовать их.
перед сохранением документа (при вызове печатной формы стоит в параметрах подсистемы автоматическое сожранение документа) - работает спецфункция в режиме "проверка документа"
делает временный dbf файл
можно ли в стандартном источнике данных bda.s_maker STROKI в АРМе УПРАВЛЕНИЕ ПРОДАЖАМИ
добавить поля из картотеки "СТЕЛЛАЖ" И "ЯЧЕЙКА"
на печатных формах в УПРАВЛЕНИИ ПРОДАЖАМИ надо адрес выводить
SQL-запрос по mkart - делается очень долго
Код
SELECT
rbookm.sclad as код_склада,
rbookm.dopcode as ном_док,
rbookm.grup as группа,
rbookm.nnum as номер,
rbookm.partia as код_партии,
mkart.mesto1 as место1,
mkart.mesto2 as место2
FROM real\rbookm as rbookm
LEFT JOIN sclad\mkart as mkart on (rbookm.sclad=mkart.sclad and rbookm.grup=mkart.grup and rbookm.nnum=mkart.nnum and rbookm.partia=mkart.partia)
Where rbookm.dopcode=:номер_заказа
Order by группа,номер,код_партии
потом массивами вывожу адреса в masterdata - НО ВСЕ ЭТО ФОРМИРУЕТСЯ ОЧЧЕНЬ ДОЛГО
второй вариант
создаю свой источник данных в спецфункции с событием "проверка документа"
но и здесь проблемы
во-первых по уму такой adres.dbf надо бы создавать во временной папке локально у пользователя например в C:\TEMP ИЛИ DBCreate(GlobalTmpPath+"adres.dbf",aStru)
(а не в общей папке \DBASE\REAL )
но тогда в SQL-запросе я не смогу обратиться к этому dbf-файлу
во вторых если я оставляю создание этого файла в папке с базой данных то при работе нескольких пользователей появляются проблемы
короче говоря вариант с собственным источником данных НЕ ГОДИТСЯ
ОПИСАНИЕ СОЗДАННОГО ИНТЕРФЕЙСА ЗАПОЛНЕНИЯ АДРЕСОВ БЕЗОПАСНО НЕ ЗАТРАГИВАЯ НАЧАЛЬНЫЙ ОСТАТОК В КАТОТЕКЕ:
1) создаём пункт меню в АРМе "ТОВАРЫ.ГОТОВАЯ ПРОДУКЦИЯ"
для этого добавляем в файл C:\B4_PLUS\DBASE\SCLAD\s_menu.dbf
строку
MENUNOMER,C,10===0
PROMPTNOME,C,3===12
MENUPROMPT,C,44==АДРЕС
MENUMESSEG,C,80==АДРЕСНЫЙ УЧЕТ
MENUBLOCK,C,100=={||HFileEval("adres2.hrb",{})}
2)
ДЛЯ ВОЗМОЖНОСТИ ПОИСКА СОЗДАЁМ ДОПОЛНИТЕЛЬНЫЙ ИНДЕКС
в файл C:\B4_PLUS\DBASE\SCLAD\bases_03.dbf
добавляем строку
ARM,C,2==============03
PATH_DBF,C,20========SCLAD\
NAME_DBF,C,10========MKart
TAG_NOMER,C,2========27
TAG_NAME,C,10========MKart_adr
INDEX,C,85===========UPPER(Status+Sclad+Mesto1+Mesto2+Grup+NNum+Partia)
MESSAGE,C,40=========Картотека
FOR_KEY,C,180========!EMPTY(NNum)
WHILE_KEY,C,10=======
DELETE,L=============ИСТИНА
PACK,L===============ЛОЖЬ
YES_INDEX,L==========ИСТИНА
CRC,N,10,0
ID_ST,N,4,0
USER_CODE,C,6
3)
теперь для появления такого нового индекса проиндекируем выборочно модуль ТОВАРЫ...
ИНДЕКС И ПУНКТ МЕНЮ ГОТОВЫ
есть только маленькая проблема при включенной авторизации при нескольких предприятий в "картотеке предприятий" и использовании справочника меню в настройке->картотеке->авторизации пользователей->справочник меню
в этом случае надо менять файл C:\B4_PLUS\DBASE\SCLAD\s_menu.dbf
в той базе которая в карточке предприятий стоит в самом верху то есть в самой первой независимо от того какой код предприятия 00001 или 00060.
и не забудьте с правочнике меню обновить меню клавишей "ALT-M"
4) код для компиляции adres2.hrb
ниже приведенный код (НАПРИМЕР В ВИДЕ ФАЙЛА adres2.prg) надо скопировать в папку C:\B4_PLUS\pro\plugins\source\SCLAD
скомпилировать его - для этого
зайти в арм ТОВАРЫ... далее в "работа с картотекой"->"номенклатурный справочник"
нажать CTRL+F5 и затем F11
открыть adres2.prg и скомпилировать нажав F2
все можно работать в новом модуле адресного учета ТМЦ на складах
без опасности изменить начальный остаток и текущее количество.
полный код adres2.prg приведу в следующем сообщении ниже
как сослаться на файл DBF лежащий за пределами базы данных
например на файл в папке C:\TEMP
есть в ADVANTAGE SQL что то типа GlobalTmpPath
потому что полный путь не работает
Код
SELECT
adres.sclad as код_склада,
adres.status as статус,
adres.grup as группа,
adres.nnum as номер,
adres.partia as код_партии,
adres.name as наименование_ТМЦ,
adres.mesto1 as место1,
adres.mesto2 as место2
FROM c:\\temp\\adres as adres
работают только относительные пути
FROM real\adres или FROM sclad\adres
за сортировку спасибо
только немного поправить пришлось
если оставить только aIn[1] то ищет только по первому введенному полю (группа)
а остальные (номер и партия) - игнорирует
пришлось добавить + aIn[2]+aIn[3]
aIn[2] - вторая вводимая при поиске срока
aIn[3] - третья
в итоге имеем рабочий вариант с поиском по трем полям одновременно:
ФИЛЬТР РАБОТАЕТ НО ОЧЕНЬ ДОЛГО - НЕ ГОДИТСЯ
СКОП - НЕ РАБОТАЕТ СОВСЕМ!!!
воспользовался Уроком 8. Размещение двух InitList на одном экране
сделал два инитлиста
верхний инитлист - справочник складов
нижний картотека mkart
как скоп правильно сделать
Индекс выбран MKART_SN = UPPER(STATUS+SCLAD+GRUP+NNUM+PARTIA)
ставлю скоп
mkart->( SetScope("UPPER(status)","1",,{'mkart_sn'} ) )
и никакого эффекта
ПОКАЗЫВАЕТ ВСЕ СТРОКИ MKART - КАК С ОДНЕРКАМИ ТАК И ПУСТЫЕ
какие еще параметры надо добавить в инитлист чтобы скоп действовал
накидал плагин
проблемы с поиском
хочу окно поиска как в справочнике партий
то есть один поисковый запрос с тремя полями
ввод ГРУППЫ
ввод НОМЕРА
ввод ПАРТИИ
пока же только в одну строку - группа и первые три символа от номенклатурного номера
за что такая несправедливость с БЭСТ4
если есть такие события для спецфункций
то почему их не распространить на все документы
карточка в картотеке - вполне полноценный документ как и все накладные в реестрах по приходу-расходу
к разработчикам
картотека
КАРТОЧКА СКЛАДСКОГО УЧЕТА
как в этой карточке разделить ввод адреса и корректировку начального остатка
нельзя ли сделать событие для спецфункции "проверка карточки" и "сохранение карточки"
как это сделано во всех реестрах документов
сейчас же оператор на складе при вводе адреса может скорректировать начальный остаток
тем самым изменив текущее количество
как разграничить полномочия оператора который только адрес должен вводить
и ответсвенного бухгалтера, которомому позволено корректировать начальный остаток
идеальный вариант - в параметрах подсистемы добавьте пункт - "корректировать нач остаток" - ДА/НЕТ