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

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

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


Форум

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

Страницы: Пред. 1 ... 5 6 7 8 9 10 11 12 13 14 15 ... 24 След.
Ещё одно событие для запуска плагинов, "Выход из документа"
 
Цитата
Алексей Новиков пишет:
Ну да, посрамили в научном споре. Но событие всё равно хочу. :-)

Да это тут ни при чем.
К стати, было бы много удобнее вместо событий дать возможность "ковырять" внутри этих самых форм редактирования. Добывить еще кое-какие события/свойства...(дать возможность вешать плагины внутри этой формы редактирования).
Там бы собственно и было бы Ваше "Закрытие документа"...
Да вообще дало бы миЛьён возможностей (мне бы не пришлось писать создание заказов и пр...)
Ещё одно событие для запуска плагинов, "Выход из документа"
 
Цитата
Алексей Новиков пишет:
При определённом количестве свободного рабочего времени и готовности заказчика его оплачивать, можно переписать весь БЭСТ почти с нуля. Как говорила мне когда-то знакомый бухгалтер, "Алексей, мы ведь работаем не для того, чтобы наработаться".

Описанные действия с исходниками только что опробовал...[Специально Для Вас и из чистого любопытства]
Прошло 8 минут со времени моего последнего сообщения. 8 минут так много?
Вот код:
Код
#include "hbclass.ch"
#include "BO_Const.ch"
TestF()
procedure TestF()
Memvar n2Ex
Private n2Ex
SETKEY(13,{||n2Ex:=MyPlugin(MDOC->DOPCODE),n2Ex})
return
STATIC Function MyPlugin(sDopCode)
Memvar oZakaz,aResult,ll
PRIVATE oZakaz
 PRIVATE aResult
 PRIVATE ll
SayAndWait("Редактирование началось")//момент ДО

 oZakaz := ZakazDoc():New()
 oZakaz:DopCode := sDopCode
 aResult := oZakaz:Edit()
 ll := aResult[1]
 IF ll
    SayAndWait("Заказ был открыт на редактирование.")
//редактирование закончилось. Момент после...
 ELSE
    SayAndWait("Произошли ошибки!")
//редактирование закончилось с ошибками!!!. Момент после...
    IF LEN(aResult)>2
       SayError(aResult[3])
//можно и не выводить ошибки
    ENDIF
 ENDIF
RETURN 1
Изменено: Саак Шахламджян - 24.12.2008 11:26:34
Ещё одно событие для запуска плагинов, "Выход из документа"
 
А вообще по поводу исходников, о которых я говорил выше:
Код
 PRIVATE oZakaz
 PRIVATE aResult
 PRIVATE ll

 oZakaz := ZakazDoc():New()
 oZakaz:DopCode := "    13"
 aResult := oZakaz:Edit()
 ll := aResult[1]
 IF ll
    SayAndWait("Заказ был открыт на редактирование.")
 ELSE
    SayAndWait("Произошли ошибки!")
    IF LEN(aResult)>2
       SayError(aResult[3])
    ENDIF
 ENDIF


Можно легко отследить начало редактирования и его окончание. Так что если Вас интересует только редактирование заказа, то можно повесить плагин на работу в реестре:
Код
....
SETKEY(13,{||n2Ex:=MyPlugin(MDOC->DOPCODE),n2Ex})
.....


который бы полностью отслеживал редактирование документа и результат редактирования... (Я только однажды пробовал работу с этими объектами, но ни разу не использовал.)
Изменено: Саак Шахламджян - 24.12.2008 11:10:24
Ещё одно событие для запуска плагинов, "Выход из документа"
 
Цитата
Алексей Новиков пишет:
Цитата Саак Шахламджян пишет:
Можно было бы на это событие подвесить все что Вам требуется!
Можно. Но зачем ради такой ерунды переписывать работу с картотекой?

Зачем же переписывать!!!!!
Делаем временную таблицу. Открываем ее тем же алиасом, которым д.б. прайс-лист(естесственно закрыв реальный) и вместо обычного прайса откроется Ваша....

(Правда было бы неплохо знать в какой же момент должен запускаться плагин по "Вход в прайс". Если после этого входа, тогда это вариант, если же до, тогда не получиться... И придется переписывать работу в картотеке.[там и делать-то не особо много. Initlist и выбор]. Но все равно неясно как оно должно работать. Как передается "выбор" в заказ в этом случае...)

P.S. У нас для работы "своего прайса" вообще пришлось даже отказаться от стандартной формы редактирования/создания заказа...
Изменено: Саак Шахламджян - 24.12.2008 10:55:50
Ещё одно событие для запуска плагинов, "Выход из документа"
 
Цитата
Алексей Новиков пишет:
Пример, когда не помогут массивы и переменные.
При открытии существующего заказа требуется включить в прайс-лист складские карточки, использованные в заказе. После корректировки заказа открытые карточки необходимо закрыть. Чтобы они не мешались при выписке другого заказа.

Пока мне это необходимо в БЭСТ-5.

Там есть событие вход в прайс-лист. Правда в СП11 или 12 так и не заработало...
Можно было бы на это событие подвесить все что Вам требуется!!!! (Если Вас правильно понял все будет в одной спецфункции)
А Ваша спецфункция возвращала бы 0 по окончанию и реальный прайс никогда бы не открывался...
Изменено: Саак Шахламджян - 24.12.2008 10:39:11
Трудности с системным реестром., Текущая запись выходит за скоб.
 
Таже самая картина происходит и в реестре "Заявки на продажу", правда там "курсор" перемещается в конец таблицы:
Код
 IF(Rlock())
          MDOC->STATUS:="4"
          MDOC->STATUS1:=1
          Unlock
        ENDIF  


Не помогает ничего. Ни DbSeek(), ни DbGotOP() или Bottom...
Ни даже так:

Код
DBPUSH()
sOrderId:=MDOC->NNOPER
USE (LOADPATH()+"real\rbook") NEW SHARED ALIAS "ORDERS"
OrdSetfocus("TAG_OPER")
If(DbSeek(sOrderId))
        IF(Rlock())
          ORDERS->STATUS:="4"
          ORDERS->STATUS1:=1
          Unlock
        ENDIF   
endif
Close ORDERS
DBPOP()
    ? DbSEEK("3")
DbGoTOP()
return


В итоге "курсор" все равно в конце списка... Т.е. картина аналогична той, что происходит в реестре сводных заказаов...
Изменено: Саак Шахламджян - 24.12.2008 10:23:42
Трудности с системным реестром., Текущая запись выходит за скоб.
 
Цитата
nordk пишет:
Правило номер один.
Используйте свои имена алиасов.
Т.е. таблицу надо открыть со своим именем алиаса в плагине а потом аккуратно закрыть.
Скоб лучше накладывать через SETSCOPE()
И указывать имена тегов, на которые Вы хотите наложить скоб. Потому что не факт что все теги имеют одинаковую старшую часть ключа.
После установки скоба следует "пошевелить" курсор средствами DBGOTOP(),DBSEEK() и т.п. Т.е. курсор должен оказаться на записи соответствующей скобу.
Дальше все будет работать без проблем.


Неужели думаете я не делал DbGotop(), ..GoBottom()?? Использовал, говорю же. После отработки плагина упорно удет на ту запись где стояло до этого...

Сделал ВСЕ как Вы сказали. Таблицы сам открыл, сделал все, что мне надо. Упорно "перегружает" таблицу, попадая на первую строку....

P.S. DbPush()/pop все равно удобнее пользоваться... Сразу и таблицу выбираем и/или индекс выбираем и/или ставим фильтр и/или скоб и сохраняем предыдущие параметры...
Изменено: Саак Шахламджян - 24.12.2008 09:03:26
Проблема со вставкой данных в .dbf файл с помощью функций ODBC PHP
 
А может быть у Вас просто ошибка в коде при работе с partner(очепатка там или еще что...)? Код в студию!!!
Ещё одно событие для запуска плагинов, "Выход из документа"
 
Цитата
Алексей Новиков пишет:
Добрый день.

Испытываю потребность в ещё одной точке вызова плагинов. Ситуация такова. В событии "Вход в документ" производится некая подготовительная работа, плодами которой пользуется документ. При сохранении документа происходит откат подготовительной работы. А выход из документа по ESC не отслеживается. Получается что результаты подготовительной работы остаются в базе, мешая впоследствии.
Попытаюсь, конечно, придумать что-то через "работа в реестре". Но было бы удобней иметь событие "Выход из документа", запускаемое независимо от того, как был осуществлён выход из документа.


А какой документ, собственно? Тут на многие "документы" есть исходный код, которым можно воспользоваться и самому вызывать ввод нового документа....
О чем речь конретно?
Изменено: Саак Шахламджян - 23.12.2008 12:21:11
Трудности с системным реестром., Текущая запись выходит за скоб.
 
Сводные заказы.
Необходимо, выполнить:
Код
 IF(Rlock())
          MDOC->STATUS:="3"
          MDOC->STATUS1:=0
          Unlock
        ENDIF

Скоб в реестре стоит такой:
DbPush("MDOC","Rbook","",{"STATUS+UPPER(DOPCODE)+DTOS(DATE)","4","4"})
/*К стати функция SetScope() НЕ РАБОТАЕТ как указано в описании. Все собирался задать этот Вопрос, но "руки не доходили". Наверное со времен СП8 или 10 пользуюсь DbPush, т.к. Сет Скоп не ставит нижнюю и верхнюю границы!!!!*/

И естественно данная запись выходит за пределы скоба.

Проблема:

После выполнения спецфункции, котрая переводит сводник в заявки на продажу в черновики (это делает кусок приведенного выше кода) происходит следущее:
В РЕЕСТРЕ активной становиться первая строка, а должна предыдущая...

(Т.е. таблица полностью перегружается...)

Как сделать правильно!!???

Такое ощущение что спецфункция вызывается так:

nRecno:=RecNo()
FileEval("UserFile")
Goto nRecno
//А т.к. запись nRecno выходит за пределы скоба, таблица перегружается...

Попутно еще Вопросы. Из описания:
QUp (nBot) – вверх на одну позицию со скроллингом в области nTop–nBot;
Я честно говоря так и не понял как она работает...

Когда мне нужно переместить а "курсор" в InitList на поз вверх или вних я делаю так:
KEYBOARD Chr(5)
KEYBOARD Chr(24).
Вопрос: что же делает QUp()/QDown() [Делают они все что угодно, но не перемещают указатель активной строки].

Как правильно делать перещение по реестру (имитация нажатия курс клавиш верх/низ)
Изменено: Саак Шахламджян - 23.12.2008 12:29:21
Лишние символы в зяписях одной из таблиц., Появилось много символов оконцания строки.
 
КАжется понял откуда берутся.

1. Делаем нового партнера (Забили код, назв, полн назв). Сохранили.

2. Открыли, полное название меняем - нажимаем пару раз Enter в конце строки, сохраняем...

В таблице эти лишние символы появляются(DBF Viewer), а вот если открыть карточку партнера, то их нет.... (Т.е. как была одна строка так и осталась)
Лишние символы в зяписях одной из таблиц., Появилось много символов оконцания строки.
 
В названии парнеров справочника партнеров появились "невидимые" символы (окончание строки). Откуда они появились неизвестно. При редактировании карточки партнера БЭСТОМ ничего не помогает, они не исчезают.

Выкладываю часть справочника.
RapidShare

Из-за этого на документах (тов накладная, например) творятся просто новогодние чудеса...
Изменено: Саак Шахламджян - 22.12.2008 16:27:37
Функция расчета план-гарфика, потребности в мат., Дайте, пожалуйста, функцию.
 
Жаль так и не узнал всей правды о базе нормирования...

По поводу кнопок. Оди довольно просто стираются... Почему сразу не догадался, не знаю... Можно просто добавить новые, примерно так:
Код
Memvar lMyButtonWasSet
Public lMyButtonWasSet
if Empty(lMyButtonWasSet)
 lMyButtonWasSet:=.F.
endif
SETKEY(-7,{||StartDel(),1})

  if !(lMyButtonWasSet)
//  ClearButtons() // Если нужно стереть кнопочки.
      lMyButtonWasSet:=.T.
      addbutton('МоЙа КнопГа',1256)
      SetButtons()
  endif
....


Невозможен вариант редактирования существующих кнопок и/или меню кнопок.
Изменено: Саак Шахламджян - 19.12.2008 16:37:29
Имущество. ПРОБЛЕМЫ., Счет-фактура. Нумерация номенклатуры. Партии. Распечатка.
 
Требуется распечатка этих же карточек еще и при создании документов движения.

Имущество-> Документы движения. При создании/редактировании этих документов при вводе новой строки можно создавать эти самые карточки, а вот распечатать их отсюда нельзя!!!
При нажатии на F9, печать вообще ничего не происзодит, не открывается даже папка с выбором шаблонов печати!!!


(Я даже скопировать не могу отчет...)


Что по поводу Вопроса №3??? По поводу нумерации в партиях?
Имущество. ПРОБЛЕМЫ., Счет-фактура. Нумерация номенклатуры. Партии. Распечатка.
 
По Вопросу №4 (распечатка):

Бухгалтер еще раз поинтересовалась по этому поводу, вот так :
" ... и скопируй, пожалуйста форму из внеоборотных активов в оборотные, а то там нет..."

Я воспринял буквально и скопировал. Вроде работает...
sp12
 
Цитата
Юлия Астахова пишет:
Здравствуйте!


Показать 24 символа номера в самом реестре возможности нет.
Выравнивание номеров с/ф доработают в Sp14.

СПАСИБО!!!
Кажется начал понимать. Номер у счета-фактуры длинный, а раньше часть отображалась. А теперь это будет исправлено в СП14.
Похоже это поле было увеличено?
И сейчас часть отображается только потому что "новые пробелы" в номере стоят перед номером.
Изменено: Саак Шахламджян - 08.12.2008 17:34:19
Имущество. ПРОБЛЕМЫ., Счет-фактура. Нумерация номенклатуры. Партии. Распечатка.
 
Огромное ВАМ спасибо, уже чувствую приближение НГ!!!:)

Цитата
Юлия Астахова пишет:
Здравствуйте!

По Вопросу 2.
Нумерация номеклатурных номеров сквозная для всех категорий имущества.

По Вопросу 4.

Речь идет про оборотные активы?


Да, из оборотных активов нельзя распечатать, а кому-то очень хочется.
Новинки 11 пакета БЭСТ-5 версия 3.4
 
Цитата
nordk пишет:
На вход в форму событие есть, но пока не работает.

Что касается переменных, то если понять структуру построения формы, то с ними можно разобраться...
И потом а как собственно Вы программно хотите менять форму если не через работу с переменными ?

Пока что я еще ничего не собрался, а только интересуюсь и обсуждаю. То не стоит воздействовать на форму, а теперь вот выясняется, что возможно и стоит.
Придется для этого изучать переменные. И скорее всего методом тыка? А их много. Нелегкий это труд и неблагодарный, в общем-то.

К стати в Б-5 есть в перемешку графические с консольными формы. Из графич вызывается консольная, графическая при этом не закрывается.
Новинки 11 пакета БЭСТ-5 версия 3.4
 
Цитата
nordk пишет:
Прошу прощения.
ПРограммно доступ к форме мы имеем.
По крайней мере в событии до записи я в области переменных все вижу.
СОбытие на вход в форму не запускается....а не форма недоступна. Проверяем этот режим.

ИМХО толку от этих переменных мало. Ковыряться в них очень тяжело, да и непонятно что к чему (их там много, если они все там).

Ведь насколько я понимаю они ни задокументированы ни исходников нет. Собственно, что они есть, что их нет...

А событие на вход форму как я понял должно работать, т.е. предусмотрено такое?
sp12
 
Пропажа номеров счетов фактур в послднем столбике это нормально!!!!?????
Имущество. ПРОБЛЕМЫ., Счет-фактура. Нумерация номенклатуры. Партии. Распечатка.
 
1. Счета фактуры!!!! А, караул, подскажите что не так:
Имущество-> Оборотные активы -> документы движения.
открываем документ поступление в эксплуатацию. Нажимаем кнопочку фактура.
Здесь ничего нельзя сделать!!!! Ни создать/сформировать/посмотреть!!!!

Что не так сделали!!? Подскажите!!!


2. Нумерация номенклатуры.
Имущество->Справочники->номенклатура имущества.
При вводе новой номенклатуры пишет номер не уникален!!!! Хотя такого номера в данной категории нет!!!!
Помогите!!! В чем дело!!?

3. Партии!!!!!
Имущество -> Картотека имущества.
Бухгалтерия не может понять: нумерация партий идет подряд. Т.е. почему не может быть 2 одинаковых
номера партии у разных номенклатурных номеров!!!!???? (так как это, например в Товары.Продукция)
Программа не дает этого сделать!!!!


4. Распечатка.

Имущество -> Картотека имущества. Как распечатать карточку!!!??? Нет шаблонов.


Бухгалтерия обещала, если не убить, то НГ испортить!!!!!!
Изменено: Саак Шахламджян - 08.12.2008 11:31:52
Нужен CHECKBOX или аналог в "сером" реестре.
 
Цитата
nordk пишет:
Организацию выбора пробелом мы рассматривали в одном из уроков.
Используется aGetBlock
Функции RotateAndReader() и RotateBlock()

Похоже, что это все на старом форуме. Во всяком случае тут не помниться такого (и поиск пустой). На старом не догадался посмотреть. Сейчас попробую почитать ур.5 и ур.6 (на старом).
Новинки 11 пакета БЭСТ-5 версия 3.4
 
Цитата
nordk пишет:
Воздействия на форму нет.
Проверка перед записью для защиты есть.
Штатные формы менять не желательно.


Что имеется ввиду под изменением штатных форм?/Разве есть возможность их менять!!!!?
Нужен CHECKBOX или аналог в "сером" реестре.
 
И каким образом мне сделать, например, меню "настройка"? (А куча вариантов в окошке NoorYes смотриться ужасно просто...)
Хотя бы как сделать выбор пробелом?
Функция расчета план-гарфика, потребности в мат., Дайте, пожалуйста, функцию.
 
Вопрос по спецификациям.
База нормирования какого-либо материала означает на какое количество изделий необходима норма расхода.

В Б-5 насколько мне известно при норме>1 Потребность в материале считается так:

(Количество изделий)*(Норма расхода)/(База нормирования), верно ведь?

А что происходит при базе нормирования= =0? Это по идее значит, что независимо от количества изделий будет расходоваться все равно одно и то же количество компонента? (В Б-5 этого компонента нуль при расчете потребности материалов)

К стати там базу нормирования можно поставить меньше нуля. Это нехорошо как-то или специально задумано?
Изменено: Саак Шахламджян - 04.12.2008 18:03:33
Страницы: Пред. 1 ... 5 6 7 8 9 10 11 12 13 14 15 ... 24 След.