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

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

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


Форум

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

Страницы: Пред. 1 ... 4 5 6 7 8 9 10 11 12 13 14 ... 24 След.
Создание документов прихода/расхода., Практическое применение классов разработчиков.
 
А еще, я думаю, дело в том, что в описании метода RUN сказано, что данный метод выполняет сохранение. Хотя теперь понимаю, что это не так.
Отсюда и пошли все неточности...

В приведенном случае я выполняю RUN, полагая, что он сохраняет, чего не происходит...
Изменено: Саак Шахламджян - 15.01.2009 17:12:21
Создание документов прихода/расхода., Практическое применение классов разработчиков.
 
Цитата
nordk пишет:
У нас в плагине RUN возвращает информацию всегда.

У меня тоже всегда все прекрасно. Только 1н случай с пустым массивом был. Из-за него весь шум-гам. Логика простая - если есть один случай почему не быть второму?

Цитата
nordk пишет:
Но мы импользуем это в товарах в расходе !!!!Даже принципы работы с приходом и расходом в товарах разные.А Вы вообще в производстве делаете.

Весело. Надо было в описании объектов с этого и начинать... (Хотя там кажется файлик склад называется, но я бы ни за что не подумал, что это ограничение...)

Цитата
nordk пишет:
Пустой массив также говорит о том, что изменений не было.

Ну вот, вот этого тоже, собственно не хватало...
По Вашему описанию получается что пустой массив не ошибка. Но если все же "опасаться" таких случаев, то я бы все же назвал небольшим недочетом. Парадокс: с одной стороны у разработчиков все верно, но с другой из-за отсутствовшего описания данный класс был "черным ящиком". И если не учитывать этот самый пустой массив, то, чисто гипотетичеки можно нарваться на ошибку.
Ведь теперь с данным описанием Удачное сохранение проверяется так:
Код
         oErr:=oDocs:Run()
        if (!Empty(oErr))
          if (oErr[1][1])//случай с одним док.
            lResult:=.T.
          else
            lResult:=.F.
          endif
        else
          lResult:=.F.
        endif
Изменено: Саак Шахламджян - 15.01.2009 16:54:37
Создание документов прихода/расхода., Практическое применение классов разработчиков.
 
Цитата
nordk пишет:
Повторяю еще раз мы уже задачу сдали и ОНА РАБОТАЕТ у клиента.Во вторых - это не ошибка.И там ничего и не должно быть

Ну, Хорошо, тогда объясните пожалуйста это:
Цитата
Метод RUN() возвращает массив, каждый элемент которого описывает результат попытки сохранения документа:
{lResult,::NNoper,::Sclad,::Vid,::Type,::TypeEx,::Date,::CodeDoc,::NumDoc, nRecNo}

Цитата из описания объектов склада.

Скажите мне внятно, ТОЧНО и ДОСТОВЕРНО что именно и когда возвращает RUN!?
Трудности с системным реестром., Текущая запись выходит за скоб.
 
Цитата
nordk пишет:

Не факт.
В случае непонимания актуальности Вопроса этим точно никто не захочет заниматься, но если актуальность будет четко разложена к Вашему мнению обязательно прислушаются

Так КБ - это кто? Куда обращаться, собственно...

По поводу сроков, увы, факт. Причина другая. Оплата продления гарантийного обслуж будет не раньше лета, а то и осени, а то и никогда...
Не работает СЕРВЕР ПРИЛОЖЕНИЙ
 
13е число, старый новый год... Время сюрпризов и чудес... :).
Трудности с системным реестром., Текущая запись выходит за скоб.
 
Цитата
nordk пишет:
Я просто хочу сказать что такие вещи в штатном реестре плагином делать не получится.
Варианта 2:
1.Писать свой реестр
2.Попросить у КБ нужну Вам доработку с обоснованием этой потребности как можно подробнее

Возможно в процессе рассмотрения Вашего Вопроса консультанты дадут Вам подсказку как можно решать штатными средствами.

А КБ-это ...?
В любом случае 2й вариант будет спустя вечность..
Создание документов прихода/расхода., Практическое применение классов разработчиков.
 
Цитата
nordk пишет:
У МЕНЯ в плагине происходит.
Есть возможность ADDROW(). И при редактировании документа
мы добавляем в существующий документ строки в нашем плагине.
Мы планируем в перспективе задачу удаления строки получить от КБ. Но так или иначе работа с документом это не только его создание.

Очень интересно у Вас, значит происходит, а у меня значит нет. Позвольте полюбопытсвовать кусочек кода и что у вас в таблице в этот момент!?
Я свой код приводил здесь и не раз. При котором НИЧЕГО не происходит...
Создание документов прихода/расхода., Практическое применение классов разработчиков.
 
Цитата
nordk пишет:
Контроль номера это локальная задача Вашего плагина.
Не вешайте это на объект.
Объект увидев номер переходит в режим редактирования и позволяет дополнять Ваш документ новыми строками.

Я что-то совсем не понял.
Какой еще режим редактирования? Вообще ничего не происходит при существовании такого же номера, понимаете? НИЧЕГО. Нуль эмоций, никаких признаков действий или чего-либо еще...
Каталоги товаров и объекты отвечающих за их формирование
 
Цитата
Денис пишет:
БЭСТ5 3.4 СП15

Цель импортировать данные в "Каталог товаров" из прайс-лист поставщика.

Если ли возможности для создания/изменения данных в "Каталоге товаров" с помощью объектов?

P.S. Мне понравилось создание накладных с помощью объектов (ScladDoc()). Теперь, если надо с помощью плагинов вносить/изменять данные в БЭСТ-е, то хочу делать это с помощью объектов :-)

А прайс-лист поставщика он в чем? [формат файла\данных]
И что такое "Каталог товаров"?
Сравнение, БЕСТ-5 vs 1С
 
Цитата
Артём Быков пишет:
Каковы приемущества данной системы по сравнению с 1С 8.0 (кроме, конечно, цены)???
На данный момент ищу альтернативу 1С'у.

Нашли место где спросить:).
Обратитесь к представителям Б-5 и 1С в своем городе, попросите устроить демонстрацию того, что Вам требуется от программы. По результатм и решите что Вам больше подходит...
Насколько мне известно 1С такое предоставляет(зависит, наверное от конкретной конторы). Б-5 по идее тоже. У Б-5 есть готовые решения под конкретные задачи их можно скачать на этом сайте.
ИМХО, проведение "миниконкурса" не повредит, если есть на это время. А дать однозначный ответ на Вопрос типа "А какой город лучше?" или "Что лучше: Win VS BSD?" в двух словах Вам никто не сможет.

Сабж "1С VS Б-5". А критерии оценки? Пункты перечислите какие Вас интересуют!!! (Задачи каковы)

P.S. А альтернатив, наверное, не так много... Есть еще парусники; есть еще САП, но это из другой оперы...

P.P.S
Цитата
dm пишет:
я думаю где то году в 2004а если ссылки нет, значит затерли - там флем великий начался после этого поста

в 2004. Гугль могет почти все: Какой-то форум.
Изменено: Саак Шахламджян - 11.01.2009 16:48:30
Индексация.
 
Когда-то я упоминал данную проблему, однако, она давно не повторялась и не "всплывала". Повторить ее не удавалось. Сейчас опять проявилась.
Фамилии сотрудников на рисунке подтер...
Пользователь 2 вошел в БД с сервера и начал индесацию без восстановления... Пути в блокировках к одной и той же БД получились разные. Индексация закончилась с ошибками.
Создание документов прихода/расхода., Практическое применение классов разработчиков.
 
Цитата
nordk пишет:



Цитата

Саак Шахламджян пишет:
При попытке сохранить документ с существующим номером должна быть ошибка в результирующем массиве, но он оказывается пустым!!!!

Это не ошибка !!!
При попытке сохранить документ с существующим номером
система считает что Вам надо этот документ исправить.
И вносит туда изменения.

А уж надо ли Вам его исправлять или вы создаете новый в объекте такого признака нет - это уже решайте внутри Вашего плагина

Я извиняюсь, а ОНА вносит изменения и сохраняет по-Вашему? (с другим нумером)

И в любом случае очень интересно как узнать в этом случае (пустой массив результата) о результатах RUN()?
Изменено: Саак Шахламджян - 29.12.2008 16:52:50
Трудности с системным реестром., Текущая запись выходит за скоб.
 
Цитата
nordk пишет:



Цитата

Саак Шахламджян пишет:
Так вот это очень Плохо!!!! Просто хуже некуда!!!
Если в Б-5 такого события нет, почему тогда происходит возврат именно на ту строку, на которой стоял "курсор" до плагина (я специально менял скоб, чтобы он охватывал измененную запись, так вот после окончания плагина "курсор" оказывается именно на этой записи!!!!!!!!)

Плагин не должен МЕШАТЬ работать БЭСТу со штатными механизмами, поэтому после его выполнения разработчик заботится вернуть все как было до его запуска.
И это логично.
Когда появилась в БЭСТ-4 перемещать курсор на конкретную запись, вот тогда СПЕЦИАЛЬНО было добавлено событие это позволяющее сделать.
Как БЭСТ узнает, что смещение на другую позицию не плод некорректного кода Вашего плагина, а осознанный выбор ?

И уж тем более не надо пытаться менять скоб у открытого штатным механизмом алиаса, да к тому же когда на нем уже стоит скоб....
Я Вам написал Выше первым пунктом - открывайте таблицу со своим именем алиаса и ТАМ Ваш скоб будет работать.

Т.е. Вы мне предлагаете переписать реестр сводных заказов!?

(Я этого очень не хотел делать, поэтому, собственно и обратился на форум за помощью)
Изменено: Саак Шахламджян - 29.12.2008 16:54:58
Трудности с системным реестром., Текущая запись выходит за скоб.
 
За время попыток решить эту проблему разобрался как работают QDOWN, QUP, хоть что-то полезное...
А вот проблема с "выпаданием" записи за скоб осталась!!!
Как изменить номер записи, к которой БЭСТ возвращается после выполнения плагина?
Ни в приватных, ни в публичных переменных не нашел ничего... Да и, собственно, не особо надеялся...
Изменено: Саак Шахламджян - 25.12.2008 16:44:31
Создание документов прихода/расхода., Практическое применение классов разработчиков.
 
А aResult - это:
Код
aResult:=oDocs:Run()

?

Откуда массив?

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

Описание массива есть в исходниках. WDOC тоже.

А разницы, наверное, никакой. Просто либо идет по индесу таблицы проверка, либо где-то (я не пытался выяснить) дополнительно храниться последний номер и тогда использование wdoc актуально...
При попытке сохранить документ с существующим номером должна быть ошибка в результирующем массиве, но он оказывается пустым!!!!

Я так делаю проверку:
Код
oErr:=oDocs:Run()
        if (!Empty(oErr))
          //сделать проверку....
          if (oErr[1][1])
            lResult:=.T.
          else
            lResult:=.F.
          endif
        else
          lResult:=.F.
        endif

отсюда тоже видно как с нм работать. А 2хмерный он потому, что в oDocs м\б несколько oDoc и первая размерность, как раз для номера документа в списке документов объекта oDocs, если мне не изменяет память.
Создание документов прихода/расхода., Практическое применение классов разработчиков.
 
К стати бОльшие проблемы и волнения у меня возникали по поводу того, что не возвращается код ошибки (кажется вообще никогда), я от nordik так и не смог добиться помощи, сделал проверку на наличие/отсутсвие ошибки (причина останется неизвестной), да и то, собственно косвено. Код где-то выше есть.
Загрузка справочников через интернет Бэст5 3.4 SP14 и прокси
 
Цитата
itman пишет:
Какая может быть другая структура? Авторизация, кстати мало помогает для ограничения доступа, все равно все ставят сохранение пароля, либо его знают все кто садится за комп.
Добавьте адрес машины в Unrestricted IPs и все.
Коннект будет без авторизации.
В следующих паках поправят, наверняка.

А если прокси будет SOCKS5? [Да и потом http-proxy тоже специфические запросы идут, свой протокол, так по идее работать не будет....]
Сомневаюсь, что в Б-5 будут делать реализацию прокси протоколов (в ближайших паках уж точно...)

А Б-5 "стучиться" по ip, а не по днс адресу?
Изменено: Саак Шахламджян - 25.12.2008 13:30:15
БЭСТ5 и Линукс
 
Цитата
Алексей Поздняков пишет:
Добрый День!!!
уважаемые сограждане

Подскажите пожалуйста
кто нибудь или у кого нибудь получилось запустить
БЭСТ5 3.х под Wine@Etersoft

запускаю под версиее вайна 1.0.9
БЭСТ устанавливается запускается
но проблема в том что ключ он не видит в упор

Причем в Wine@Etersoft встроена уже поддержка ключей
и сам вайн ключ видит на ура (запускается сервер ключей на порту 7001 и монитор на 7002)

в Техподдержку Wine@Etersoft отписался люди вроде как занимаются
может кто у нас на форуме уже решил эту проблему
или техслужба что подскажет как БЭСТ работает с ключом

С Уважением!!!
Алексей!!!


ИМХО 7001 порт совершенно здесь ни при чем.
Сервер БЭСТА по идее работает еще по какому-то другому интерфейсу (не сетевому) с ключем защиты....
Кроме того с ключем защиты ставиться драйвер ключа. Он что тоже встал нормально?

Есть такая необходимость сервер БЭСТ на линь ставить?
Да и потом, разве линь поддерживает виндовый browser протокол? Без него Б-5 точно работать не будет. (по сети)
Изменено: Саак Шахламджян - 25.12.2008 13:16:30
Создание документов прихода/расхода., Практическое применение классов разработчиков.
 
Цитата
Денис пишет:

Спасибо! Работает. Причем НДС и т.д. похоже сам считает. Осталось разобраться с нумерацией...


Для нумерации есть функция WDOC. Правда с ключем уникальности я толком не разобрался. Написал еще свою WDOC1 "для надежности", на боевой машине проблем не было. А потом как оказалось, что одинаковые номеру могут быть, просто вид документов д.б. разный, я был не в курсе. Лично по мне все равно как-то не удобно...
Вот тема:
WDOC-нумерация
Запрет на символы в номере документа
 
Цитата
Тот Самый пишет:
Здравствуйте!
Возможно ли запретить пользователям при формировании новой накладной использовать в поле Номер Документа любые символы кроме цифр без использования специальных функций?

Нет, такой настройки точно нет. Во всяком случае в СП12.

Может быть единственный вариант - это запрет ввода номера документа (там должно быть, хотя сейчас не помню) и БЕСТ автоматом его ставит, следующим по списку.
Так что, если у Вас эти документы из одного и того же меню программы создаются, то глюков с автонумерацией быть не должно...
Создание документов прихода/расхода., Практическое применение классов разработчиков.
 
Я делал документы оприходования ГП-товары. Исходя из Вашего кода по идее должно быть так:

Код

Local oDocs 
   Local oDoc1 

   oDocs := ScladDocs():New() 
   oDocs:Task := "03" 
   oDoc1:= ScladDoc():New() 
   oDocs:Hidden := 3 
   oDocs:Protokol := tempfile('c:\bests','txt') 
   oDoc1:Vid := "2" 
   oDoc1:Type := "1" 
   oDoc1:CodeDoc := "001" 
   oDoc1:NumDoc := "000018" 
   oDoc1:Sclad := "Центр." 
   oDoc1:Part_type := '1'     
   oDoc1:Part_Code := "000019" 

   oDoc1:AddRow("00003","0000000000002",,,10)
//заметьте тут нужно знать к какому элементу массива rows требуется обращение.
//Т.е. либо счетчик, либо по длине.

   oDoc1:ROWS[1]:SumOutR:=5000//осн валюта

/*   oDoc1:ROWS[1]:SumOut:=5000 - сумма во 2й валюте
Аналогично: oDoc1:ROWS[1]:SumFact, oDoc1:ROWS[1]:SUMOUT, oDoc1:ROWS[1]:SUM, oDoc1:ROWS[1]:SUMN - налог стоим.
Из последних свойств необходимо смотреть какие Вам нужны, а какие нет. Для этого нужно в документах Б-5 поковыряться и поэкспериментировать со свойствами.*/



   oDocs:AddDoc(oDoc1) 
   oDocs:Run()


В любом случае нужно смотреть класс ScladRow. И "ставить опыты":)
Т.е. сделать проверку, получился ли правильно требуемый документ или нет.
Лично я не могу сказать определенно точно какие свойства за что отвечают. (Такие как TZR1MN...)

Там еще параметр по НДС есть, кажется этот:
data NDS init 0 // Значение параметра NDS товара...
Т.е. для кода, приведенного выше будет так:
Код
oDoc1:ROWS[1]:NDS:=900
Изменено: Саак Шахламджян - 25.12.2008 11:07:54
Загрузка справочников через интернет Бэст5 3.4 SP14 и прокси
 
Proxifier, например, или FreeCap.
Трудности с системным реестром., Текущая запись выходит за скоб.
 
Цитата
nordk пишет:

А никто Вам не обещал что после плагина Вы останетесь на Вашей строке !!!
Все правильно БЭСТ пытается вернуться в состояние до старта плагина.
В БЭСТ-4 на Инитлист было событие "позиционирование"
В БЭСТ-5 я такого события не вижу

Так вот это очень Плохо!!!! Просто хуже некуда!!!
Если в Б-5 такого события нет, почему тогда происходит возврат именно на ту строку, на которой стоял "курсор" до плагина (я специально менял скоб, чтобы он охватывал измененную запись, так вот после окончания плагина "курсор" оказывается именно на этой записи!!!!!!!!)
Создание документов прихода/расхода., Практическое применение классов разработчиков.
 
Цитата
Денис пишет:

Я в параметрах AddRow() не вижу возможности задать цену и/или сумму цены отпускной (CenaOut, SumOut). А они нужны!


Скорее всего там нет такого параметра.
Такой параметр есть в классе ScladRow, например, параметр SumFact - фактическая сумма товара... И через DATA ROWS (массив) класса ScladDoc можно получить доступ к цене конкретной строки документа...
Изменено: Саак Шахламджян - 25.12.2008 08:54:59
Ещё одно событие для запуска плагинов, "Выход из документа"
 
Цитата
Алексей Новиков пишет:
"Ковырять внутри форм" не соответствует парадигме программы, которая не задумывалась и не позиционируется как средство разработки. При добавлении точки вызова события требуется, чтобы в этой точке состояние системы было каким-то образом зафиксировано. Иначе, в перспективе, устанавливаемые обновления могут запросто разрушить логику работы плагина.

А спецфункции - это разве не ковыряние внутри форм...?
Обновления выходят и ничего...
Тем более событие "Вход в прайс-лист" собственно происходит внутри формы...
(А вот повесить событие по нажатию F4-добавление внутри создания заказа нельзя... Или по F8)
Я имел ввиду не изменение работы самой формы, а лишь "добавление доп точек разрыва" куда можно втиснуться...
Страницы: Пред. 1 ... 4 5 6 7 8 9 10 11 12 13 14 ... 24 След.