View previous topic :: View next topic |
Author |
Message |
itman

Joined: 05 Apr 2002 Posts: 1247 Location: Ильин Е.Ю. Occupation: Cio Interests: Кинель
|
Posted: 15 Mar 2005 08:28 Post subject: |
|
|
Ну раз все работает, скинь код с базой, обновлю архив.
Судя по счетчику это пользуется спросом.
Еще бы кто readme.txt написал, и автоматическое создание баз при их отсутствии - и процесс инсталляции значительно упроститься.
А потом торжественно отправим в ГК БЭСТ для занесения в инсталлятор.
 |
|
Back to top |
|
 |
Титов Александр
Joined: 26 Jul 2002 Posts: 975 Location: Титов Александр Александрович Occupation: Компания БЭСТ Interests: Москва
|
Posted: 15 Mar 2005 08:43 Post subject: |
|
|
itman wrote: | Ну раз все работает, скинь код с базой, обновлю архив.
Судя по счетчику это пользуется спросом.
Еще бы кто readme.txt написал, и автоматическое создание баз при их отсутствии - и процесс инсталляции значительно упроститься.
А потом торжественно отправим в ГК БЭСТ для занесения в инсталлятор.
 |
Это хорошо, что вы нас подтолкнули: простенько и со вкусом. Обязательно вставим что-то подобное в 12 версию. _________________ С уважением, Александр Титов, Компания БЭСТ, Москва, отдел разрабо |
|
Back to top |
|
 |
itman

Joined: 05 Apr 2002 Posts: 1247 Location: Ильин Е.Ю. Occupation: Cio Interests: Кинель
|
Posted: 15 Mar 2005 09:18 Post subject: |
|
|
Алаверды можно?
Есть неплохая разработка у Самарского представителя, книга покупок/продаж, увы она осталась без поддержки. Что-то подобное пришлось бы очень кстати. |
|
Back to top |
|
 |
denlog

Joined: 16 Jul 2003 Posts: 155 Location: Логинов Денис Евгеньевич Occupation: Автоцентр КамАЗ, инженер-программист Interests: Н.Челны
|
Posted: 15 Mar 2005 10:38 Post subject: |
|
|
Пока нет пароля на вход в спецфункции CTRL+F5, вся эта статистика может быть скомпрометирована любым продвинутым юзером.
Так что рановато отправлять "... в ГК БЭСТ для занесения в инсталлятор ..." _________________ юзай man'ы |
|
Back to top |
|
 |
itman

Joined: 05 Apr 2002 Posts: 1247 Location: Ильин Е.Ю. Occupation: Cio Interests: Кинель
|
Posted: 15 Mar 2005 10:52 Post subject: |
|
|
А для таких случаев - аудит за файлом fxxxx.dbf.
его же просто можно элементарно очистить и админ не сразу узнает
поэтому есть утиль которая сканит опять же все базы и снимает параметры (кол-во записей всего, удаленных, размер, дату сохранения и т.д.) если к примеру за настройки спецфункций отвечает админ и аудитом занимается он же - то время реагирования на деструктивное действие зависит от степени параноидальности субъектов.
вот  |
|
Back to top |
|
 |
denlog

Joined: 16 Jul 2003 Posts: 155 Location: Логинов Денис Евгеньевич Occupation: Автоцентр КамАЗ, инженер-программист Interests: Н.Челны
|
Posted: 15 Mar 2005 11:13 Post subject: |
|
|
itman wrote: | Ну раз все работает, скинь код с базой, обновлю архив.
Судя по счетчику это пользуется спросом.
Еще бы кто readme.txt написал, и автоматическое создание баз при их отсутствии - и процесс инсталляции значительно упроститься.
А потом торжественно отправим в ГК БЭСТ для занесения в инсталлятор.
|
Дык и скидывать то нечего
В твоих же кодах просто алиас sh_fact меняем на rbook, также изменения в строке cdir:=LoadPath()+'!loger\real\delrbook.dbf'
delz - произвольно (у меня просто означает deleted zakaz ), можно было и неменять это.
вот результат:
Quote: | private cDir, aStru
cdir:= LoadPath()+'!loger\real\delrbook.dbf'
dbpush()
netuse('delz',cdir)
delz->(addrec())
delz->DATE_DEL := Date()
delz->TIME_DEL := time()
delz->NUM_ZAKAZ := mdoc->DOPCODE
delz->DATE := mdoc->DATE
delz->NUM_SCHET := mdoc->NUMDOC
delz->CODE_KAG := mdoc->AGENTCODE
delz->NAME_KAG := mdoc->AGENTNAME
delz->REGION := mdoc->REGION
delz->SUM_ZAKAZ := mdoc->SUMOUT
delz->CODE_TAG := mdoc->AGENTCOD
delz->NAME_TAG := mdoc->AGENTNAM
delz->USER_CODE := mdoc->USER_CODE
delz->(f_dbUnLock())
delz->(dbCloseArea())
dbpop() |
Далее нужно создать DELRBOOK.DBF (можно и по другому назвать)
Создать очень просто с помощью клёвого редактора баз данных http://santech.chat.ru/bro.zip - удобный броузер/редактор БД.
в зависимости от того какие поля (столбцы) из базы RBOOK.DBF Вам требуются. Наименование и значение полей можно почитать в С:\B4_PLUS\DBASE\REAL\APDX-05.TXT
я пока такой dbf себе сотворил:
Quote: | Structure of C:\1\DELRBOOK.DBF
Nr. Field Name Type Len Dec
==== ========== ========= ===== =====
1 DATE_DEL Date 8 0
2 TIME_DEL Character 10 0
3 NUM_ZAKAZ Character 6 0
4 DATE Date 8 0
5 NUM_SCHET Character 6 0
6 CODE_KAG Character 6 0
7 NAME_KAG Character 25 0
8 REGION Character 15 0
9 SUM_ZAKAZ Numeric 19 3
10 CODE_TAG Character 6 0
11 NAME_TAG Character 25 0
12 USER_CODE Character 6 0
Total Length: 141 |
Мне кажется достаточно на сайте http://www.vlankas.ru/~itman/modules/mydownloads/
в описании к разделу Quote: | Раздел: Пользователям БЭСТов посвящается Утилиты
Скачайте сейчас! Решение для учета изменений в реестрах документов по учету Т | написать что для RBOOK.BDF - алиас MDOC и всё.
Если бы я знал об этом, то до сих пор так и не представлял себе что значит "скомпилировать с отладчиком" и многих других вещей, до селе мне не знакомых. _________________ юзай man'ы |
|
Back to top |
|
 |
denlog

Joined: 16 Jul 2003 Posts: 155 Location: Логинов Денис Евгеньевич Occupation: Автоцентр КамАЗ, инженер-программист Interests: Н.Челны
|
Posted: 15 Mar 2005 11:27 Post subject: |
|
|
itman wrote: | А для таких случаев - аудит за файлом fxxxx.dbf.
его же просто можно элементарно очистить и админ не сразу узнает ... | Нашел .../DBASE/FEVAL.DBF
там есть запись о моей спецфункции
NAME - удаление
NAMEFILE - delrbook.prg
Quote: | ... поэтому есть утиль которая сканит опять же все базы и снимает параметры (кол-во записей всего, удаленных, размер, дату сохранения и т.д.) если к примеру за настройки спецфункций отвечает админ и аудитом занимается он же - то время реагирования на деструктивное действие зависит от степени параноидальности субъектов.
вот  |
можно подробнее про эту утиль и чавой-та про ПАРАНАИДАЛНАСТь не поня _________________ юзай man'ы |
|
Back to top |
|
 |
itman

Joined: 05 Apr 2002 Posts: 1247 Location: Ильин Е.Ю. Occupation: Cio Interests: Кинель
|
Posted: 15 Mar 2005 11:40 Post subject: |
|
|
Утиль - обычный сканер на фоксе, но я его не дам ))) мне за него стыдно он из разрядов "для себя" , т.е. непричесанный.
а параноидальность - ... ))
Quote: | Паранойя.
Редкий хронический психоз, при котором логически построенный систематизированный бред развивается постепенно, не сопровождаясь галлюцинациями или расстройством мышления шизофренического типа. Обычно характерен бред величия (паранойяльный пророк или изобретатель), преследования или физического неблагополучия . |
Чем выше уровень - тем быстрее юзер получит по "ушам".
Просто на мой взгляд, это избыточные действия. Достаточно объяснить раз, и не стоит пугать что все ваши шаги записываются. Просто пусть это будет неожиданностью для нарушителя.
 |
|
Back to top |
|
 |
denlog

Joined: 16 Jul 2003 Posts: 155 Location: Логинов Денис Евгеньевич Occupation: Автоцентр КамАЗ, инженер-программист Interests: Н.Челны
|
Posted: 15 Mar 2005 12:01 Post subject: |
|
|
itman wrote: |
Quote: | Паранойя.
Редкий хронический психоз, при котором логически построенный систематизированный бред развивается постепенно, не сопровождаясь галлюцинациями или расстройством мышления шизофренического типа. Обычно характерен бред величия (паранойяльный пророк или изобретатель), преследования или физического неблагополучия . |
 |
Как все оказывается серьёзно  _________________ юзай man'ы |
|
Back to top |
|
 |
denlog

Joined: 16 Jul 2003 Posts: 155 Location: Логинов Денис Евгеньевич Occupation: Автоцентр КамАЗ, инженер-программист Interests: Н.Челны
|
Posted: 15 Mar 2005 12:12 Post subject: |
|
|
itman wrote: | Чем выше уровень - тем быстрее юзер получит по "ушам".
Просто на мой взгляд, это избыточные действия. Достаточно объяснить раз, и не стоит пугать что все ваши шаги записываются. Просто пусть это будет неожиданностью для нарушителя. |
Окей
Пока остановимся на объяснении юзерам как не надо делать.
Благо пока уровень продвинутости у юзеров на противозачаточном уровне, и мы админы больше страдаем от непродвинутости юзеров, нежели их любознательности.
И я до сих пор не знаю что лучше: тупой юзер (абсолютно непонимающий что он делает) или продвинутый (с излишним любопытством).
Наверное везде есть свои минусы и плюсы.
З.Ы. Жаль, что при индексации дата файла FEVAL.DBF меняется на дату индексации. А то можно было бы хотя бы по дате файла и юзеру сети смотреть. _________________ юзай man'ы |
|
Back to top |
|
 |
itman

Joined: 05 Apr 2002 Posts: 1247 Location: Ильин Е.Ю. Occupation: Cio Interests: Кинель
|
Posted: 16 Mar 2005 15:41 Post subject: |
|
|
progforbest wrote: | А как добавить в лог не шапку документа mdoc а строки mdocm при этом перебрать их все.
Заранее спасибо |
добавить в код :
Code: |
DBPUSH("MDOCM","MDOCM","",{"UPPER(Sclad+Vid+Type+CodeDoc+NumDoc)",MDOC->(UPPER(Sclad+Vid+Type+CodeDoc+NumDoc))})
DBGOTOP()
DO WHILE !EOF()
////код записи в твою базу
.................
////
DBSKIP()
ENDDO
dbpop()
|
|
|
Back to top |
|
 |
denlog

Joined: 16 Jul 2003 Posts: 155 Location: Логинов Денис Евгеньевич Occupation: Автоцентр КамАЗ, инженер-программист Interests: Н.Челны
|
Posted: 16 Mar 2005 17:46 Post subject: |
|
|
itman wrote: | progforbest wrote: | А как добавить в лог не шапку документа mdoc а строки mdocm при этом перебрать их все.
Заранее спасибо |
добавить в код :
Code: |
DBPUSH("MDOCM","MDOCM","",{"UPPER(Sclad+Vid+Type+CodeDoc+NumDoc)",MDOC->(UPPER(Sclad+Vid+Type+CodeDoc+NumDoc))})
DBGOTOP()
DO WHILE !EOF()
////код записи в твою базу
.................
////
DBSKIP()
ENDDO
dbpop()
|
|
сегодня как раз бился с этой темой
залез вопрос задать про (dbCloseArea())
а тут уже ответ на то, что уже сами сделали.
сделал так
Quote: | private cDir, aStru
// задаём переменную cDir (что такое aStru - до сих пор для меня загадка)
cdir:= LoadPath()+'!loger\real\drbookm.dbf'
// пишем что переменная cDir - путь к файлу drbookm.dbf (это где все логи будут по удалённым заказам)
netuse('delz',cdir)
// создаём алиас delz (можно произвольное название на ваше усмотрение), который будет означать нашу базу логов drbookm.dbf
DBPUSH("mdocm","RBOOKM","mdocm->DOPCODE=mdoc->DOPCODE")
// создаём текущую рабочую область, где
// - "mdocm" - алиас базы (в открытом реестре заказов это как ни странно база rbookm.dbf)
// - "RBOOKM" - индекс (в файле ...\DBASE\REAL\BASES_05.DBF) и означает UPPER(DopCode+Grup+NNum+Partia+Sclad)
// - далее фильтр "mdocm->DOPCODE=mdoc->DOPCODE" только те строки номенклатуры
// у которых номер заказа mdocm->DOPCODE равен номеру заказа из mdoc->DOPCODE (поле DOPCODE из файла rbook.dbf)
DO WHILE !EOF()
// цикл - выполнять пока соблюдается условие !EOF() - "!" означает отрицание, то есть пока не достигнет конца - EOF = End Of File
delz->(addrec())
delz->DATE_DEL := Date()
delz->TIME_DEL := time()
delz->DOPCODE := mdocm->DOPCODE
delz->DATE := mdocm->DATE
delz->GRUP := mdocm->GRUP
delz->NNUM := mdocm->NNUM
delz->KOL := mdocm->KOL
delz->CENAOUT := mdocm->CENAOUT
delz->SUMOUT := mdocm->SUMOUT
delz->AGENTCOD := mdocm->AGENTCOD
delz->SCLAD := mdocm->SCLAD
delz->OCENA1 := mdocm->OCENA1
delz->OCENA2 := mdocm->OCENA2
delz->OCENA3 := mdocm->OCENA3
delz->OCENA4 := mdocm->OCENA4
delz->PARTIA := mdocm->PARTIA
delz->SUM_NDS := mdocm->SUM_NDS
delz->NUM_SCHET := mdoc->NUMDOC
delz->CODE_KAG := mdoc->AGENTCODE
delz->NAME_KAG := mdoc->AGENTNAME
delz->REGION := mdoc->REGION
delz->SUM_ZAKAZ := mdoc->SUMOUT
delz->CODE_TAG := mdoc->AGENTCOD
delz->NAME_TAG := mdoc->AGENTNAM
delz->USER_CODE := mdoc->USER_CODE
delz->(f_dbUnLock())
DBSKIP()
ENDDO
//delz->(dbCloseArea())
// пришлось закоментировать так как с этим (dbCloseArea()) - ругается
dbpop() |
Все работает!
Только я еще по подсказке ИТМАНа добавил
Quote: | DBGOTOP()
// Перемещает указатель на первую логическую запись в текущей рабочей области |
А вот (dbCloseArea()) так и не работает.
скриншот
Убрал её вообще из кода.
Описание: Quote: | DBCLOSEAREA() закрывает текущую рабочую область, возвращая системе освобождаемую область памяти. Все корректировки базы данных записываются на диск, блокировки снимаются, любые ресурсы, связанные с текущей рабочей областью, закрываются или освобождаются.
DBCLOSEAREA() эквивалентна стандартной команде CLOSE или команде USE без аргументов. Более подробную информацию смотрите в командах USE и CLOSE. |
Может кто из натуральных ПРОГРАММЕРов подскажет почему в предыдуще логере с RBOOK.DBF работала эта фишка, а теперь нет. _________________ юзай man'ы |
|
Back to top |
|
 |
denlog

Joined: 16 Jul 2003 Posts: 155 Location: Логинов Денис Евгеньевич Occupation: Автоцентр КамАЗ, инженер-программист Interests: Н.Челны
|
Posted: 16 Mar 2005 18:02 Post subject: |
|
|
И еще одна заморочка.
USER_CODE - это код оператора работавшего последний раз с документом
в случае с сохранением/корректировкой - это устраивает.
Но нам нужно знать кто удалил.
А в этом случае этот код USER_CODE не поможет.
Как бы узнать какая переменная содержит код текущего оператора в БЭСТе _________________ юзай man'ы |
|
Back to top |
|
 |
itman

Joined: 05 Apr 2002 Posts: 1247 Location: Ильин Е.Ю. Occupation: Cio Interests: Кинель
|
Posted: 17 Mar 2005 08:38 Post subject: |
|
|
denlog wrote: | И еще одна заморочка.
USER_CODE - это код оператора работавшего последний раз с документом
в случае с сохранением/корректировкой - это устраивает.
Но нам нужно знать кто удалил.
А в этом случае этот код USER_CODE не поможет.
Как бы узнать какая переменная содержит код текущего оператора в БЭСТе |
Навскидку не вспомню, но видел значение среди переменных, когда лазил в отладчике. Что и советую сделать, собери с ключиком /b и включи просмотр переменных, можно all ))
и ищи свой код операто |
|
Back to top |
|
 |
itman

Joined: 05 Apr 2002 Posts: 1247 Location: Ильин Е.Ю. Occupation: Cio Interests: Кинель
|
Posted: 17 Mar 2005 08:45 Post subject: |
|
|
Quote: | Может кто из натуральных ПРОГРАММЕРов подскажет почему в предыдуще логере с RBOOK.DBF работала эта фишка, а теперь нет. |
В отладчике перед выполнением этой команды проверь текущую область. Может в этом дел |
|
Back to top |
|
 |
|