BEST logo логотип компании БЭСТ - программы для бизнеса ПРОДАЖИ
+7 (991) 312-04-37
trade@bestnet.ru
ПОДДЕРЖКА
+7 (495) 775-66-76
consult@bestnet.ru
СКАЧАТЬ
Обновления
Дистрибутивы
Авторизация

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

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


Форум

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

Страницы: Пред. 1 2
Переписать условие формирование строк УСН отчета по видам оплат
 
Здравствуйте, помогите правильно сформировать Книгу доходов и расходов УСН по разнесению оплат в 4 разделе.
Как сейчас формирует запрос не понятно см. в посте http://bestnet.ru/support/forum/index.php?PAGE_NAME=read&FID=8&TID=6401
Возможно ли переформатировать запрос на дату КБК в выписке банка, пока она не заполнена. Но можем указать там дату платежа.
Прилагаю экраны, о том что суммы не задвоены, и вид выписки банка.
Взять 3 знака стоимости материалов .
 
Б5 34.31.9
Здравствуйте. В оборотных ведомостях запасов разработали пример для переброски в эксель.
Необходимо модернизировать, чтоб цена бралась из номенклатурной карточки т.е 3 знака после запятой.
Сейчас тянется 2 знака из картотеки склада. Идут расхождения между БЭСТ и Экселем при списании.
В формуле вычисления не разобрался, по сравнению с полями Фастрепорта Б4, тут все на английском.))
Это пока самое важное.
2. Как можно организовать вывод его в эксель сразу формате. В стандартных формах Б5, появилось окно Вывод с выбором, было бы Хорошо и здесь научится так применить.
3. В экселе отсортировано по наименованию, как это организовать в отчете?
Изменено: ВАЛЕРИЙ БОНДАРЧУК - 05.03.2014 11:17:35
Как разнести оплату по УСН в финансах 2007
 
Б5 34 31.9

Сформировали отчет по книге Расходов. 4 раздел. Оказалось что задваиваются суммы оплат в 1 месяце.
В выписке банка финансы 2007 проставили КБК и период оплаты и сумму. Все равно отчет остался с повторениями.
Хотя с февраля уже идут одинарные суммы.
Как правильно надо регестрировать проводки, чтоб период разносился однозначно.
В отчете мы видим, что иногда суммы привязываются и к 2012 году и 2013, а иногда и к пустому периоду
Изменено: ВАЛЕРИЙ БОНДАРЧУК - 04.03.2014 08:20:27
Применние функции поиска проводок в групповой операции.
 
Формирую данные по фин деятельности в групповых операциях.
Необходимо отобрать фирмы поставщиков, у которых суммы больше 50000. Суммировать по каждому и написать за что.
А всех остальных суммировать в прочие.
Использую функцию ПРОТОКОЛ, чтоб получить эти данные на экране.
Подскажите как организовать это в групповой.
Например
имеются следующие проводки:
Фирма1 150 000 - ремонт автомобиля
Фирма1 314 000 - ремонт автомобиля грузового
Фирма2 200 000 - продажа гаража
Фирма3 3 000 - ремонт принтера
Фирма4 1 500 - поставка канцтоваров

Должно получится
Фирма1 ремонт автомобиля 464 000
Фирма2 продажа гаража 200 000
Прочие 4 500

Применил данный код выбора проводок. Проводки выбрались. А как их отранжировать и рассортировать не знаю.
Код
 * гр1 =ПОЛ_ПРОВ("2601","601",А12,А2)
  * В1  = "1"
  * ПОКА (В1=="1")
  *   В = гр1.СУММА
  *   Р12А169 =В+Р12А169
  *    В1 =СЛЕД_ПРОВ(гр1)
  * ВСЕ_ПОКА
  *   Р12А169=Р12А169

Попробовал хотя бы набрать сумму прочих затрат
Код
СУМ = 0
ПОКА ( ШАУ ("Б1") = 1)
ЕСЛИ (СУМ < 50000)
ВЫВОД СУМ
  СУМ1 = СУМ1+СУМ
ВЫВОД СУМ1
ИНАЧЕ
  ВСЕ_ЕСЛИ
ВСЕ_ПОКА

Но выдает ноль. Как поправить групповую?

Имею пока вот такой код

Код
 М1 = "Заработная плата         "
 М2 = "Налоги:               "
 М3 = "В том числе: отчисления от з/платы"
 М4 = "Усн                "
 М5 = "Транспортный налог          "
 М6 = "Экология              "
 М7 = "Начисленная амортизация        "
 М8 = "Списание материалов         "
 М9 = "В том числе ГСМ          "
 М10= "Расходы от списания ОС      "
 М11= "РКО                "
 М12= "% по кредитам            "
 А1 = ДАТА()
 А2 = ДАТА()
 А3 = "2601"
 А5 = "70"
 А6 = "200*"
 А7 = "912"
 Б1 = "601"
 А11 = "01/01/13"
 А1 = СТР_ДАТА(А11),
 А21 = "31/12/13"
 А2 = СТР_ДАТА(А21),
СУМ1=0
ВВОД(("Дата начала    ","А1","Д"),;
     ("Дата конца     ","А2","Д"),;
     ("Номер счета....","Б1","СЧЕТ");
     )
* ___________Сбор суммы Зарплаты______________
      X = ДТКТ(А3,А5,А1,А2)
      X1 = ДТКТ(А6,А5,А1,А2)
      X2 = ДТКТ(А7,А5,А1,А2)
      X3 = ДТКТ("20*","97",А1,А2)
      X4 = ДТКТ("2601*","97",А1,А2)
      X5 = X+X1+X2+Х3+Х4
* ___________Сбор суммы Налоги______________
      X11 = ДТКТ("912*","69*",А1,А2)
      X12 = ДТКТ("20*","69*",А1,А2)
       X13 = ДТКТ("2601*","69*",А1,А2)
      X14 = X11+X12+X13
*         УСН
 X15 = ДТКТ("99У*","6813*",А1,А2)
*         транспортный
 X16 = ДТКТ("26*","6805*",А1,А2)
*         экология
 A8= "912"+"."+"000013"
 X17 = ДТКТ(А8,"686*",А1,А2)
 * итого налоги
  X18 = X14+X15+X16+X17
*         амортизация
      X19 = ДТКТ("912*","02*",А1,А2)
      X20 = ДТКТ("20*","02",А1,А2)
      Х21 = X19+X20
*         списание материалов
      X22 = ДТКТ("912*","10*",А1,А2)
      X23 = ДТКТ("20*","10*",А1,А2)
      X24 = ДТКТ("712*","10*",А1,А2)
      Х25 = X22+X23+Х24
*           в т.ч гсм
      X25 = ДТКТ("20*","712*",А1,А2)
      X26 = ДТКТ("26*","712*",А1,А2)
      Х27 = X25+X26
*         расходы от спиания ос
 A9 = "912"+"."+"000002"
 X28 = ДТКТ(А9,"01*",А1,А2)
 *           РКО
 A10 = "912"+"."+"000010"
 A11 = "912"+"."+"000021"
 X29 = ДТКТ(А10,"51*",А1,А2)
 X30 = ДТКТ(А11,"51*",А1,А2)
 Х31 = X29+X30
*         % по кредитам
 A12 = "912"+"."+"000020"
 X33 = ДТКТ(А12,"51*",А1,А2)
 * гр1 =ПОЛ_ПРОВ("2601","601",А12,А2)
  * В1  = "1"
  * ПОКА (В1=="1")
  *   В = гр1.СУММА
  *   Р12А169 =В+Р12А169
  *    В1 =СЛЕД_ПРОВ(гр1)
  * ВСЕ_ПОКА
  *   Р12А169=Р12А169
 СУМ = 0
ПОКА ( ШАУ ("Б1") = 1)
ЕСЛИ (СУМ < 50000)
ВЫВОД СУМ
  СУМ1 = СУМ1+СУМ
ВЫВОД СУМ1
ИНАЧЕ
  ВСЕ_ЕСЛИ
ВСЕ_ПОКА
ПРОТОКОЛ ( "0 XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX;; 99999999.99",М1, Х5)
ПРОТОКОЛ ( "0 XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX;; 99999999.99",М2, Х18)
ПРОТОКОЛ ( "0 XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX;; 99999999.99",М3, Х14)
ПРОТОКОЛ ( "0 XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX;; 99999999.99",М4, Х15)
ПРОТОКОЛ ( "0 XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX;; 99999999.99",М5, Х16)
ПРОТОКОЛ ( "0 XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX;; 99999999.99",М6, Х17)
ПРОТОКОЛ ( "0 XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX;; 99999999.99",М7, Х21)
ПРОТОКОЛ ( "0 XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX;; 99999999.99",М8, Х25)
ПРОТОКОЛ ( "0 XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX;; 99999999.99",М9, Х27)
ПРОТОКОЛ ( "0 XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX;; 99999999.99",М10, Х28)
ПРОТОКОЛ ( "0 XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX;; 99999999.99",М11, Х31)
ПРОТОКОЛ ( "0 XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX;; 99999999.99",М12, Х33)
ПРОТОКОЛ ( "0 XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX;; 99999999.99",М12, СУМ1)
Изменено: ВАЛЕРИЙ БОНДАРЧУК - 19.02.2014 06:51:40
Ошибка на поле дата в акте сверки
 
Здравствуйте БЭСТ 5 3,4 sp31
Модернизировали акт сверки. Напрямую через отчеты выдает ошибку на невозможность преобразовать дату.
Запускаем через дизайнер, так же ошибки но формирует.
А после этого, уже следующие акты выходят без ошибок.
И так каждый день. Подскажите, что поправить в отчете?

Изменено: ВАЛЕРИЙ БОНДАРЧУК - 19.02.2014 06:19:55
Нужна обработка mdocm.dbf на основе таблицы mlabel.dbf
 
Слетели цену учетные в движении товаров.
В номенклатуре стоят правильные, а в mdocm.dbf равные продажным.
Нашел возможность поменять раскрывая картотеку в накладной и перенос обратно с запоминанием или выгрузка строк документа и импорт обратно. Никакой другой вариант пересчета не помогает, также остаются все на месте импортом \ экспортом документов.
Необходима небольшая программа, по замене суммы учетной и цены учетной в mdocm.dbf на основе связи по группе и нномеру в mlabel.
Страсти кипят, программа нужна еще вчера.
Никогда не писал и не привязывал в Б5. Помогите с пошаговой инструкцией, как это сделать.
С уважением, Валерий Бондарчук.
Табельный учет и графики в Зарплате магазина.
 
Подскажите как совместить графики фактического выхода сотрудников магазина, с табельным учетом и передачей значений в расчет зарплаты.
Магазин работает со скользящими графиками в зависимости от потребности дня, кто-то заболел, невыход и прочие,
поэтому смещаются дни планируемых выходов и отдыха. Присутствует переработка и прогулы.
Расчет оплаты поставлен за час или у руководства за день.
То есть не важно отработал час или 12 - значение умножат на норматив и рассчитают начисление.
Поэтому табельный учет не сводится к выполнению выходов, а является информативным средством отслеживания работы сотрудника и итоговым накоплением в часах/ днях за первую половину и 2 половину месяца.
Не получается сформировать суммированный табель, для передачи в раздел Зарплата. Необходим конкретный график работ по каждой сложившейся ситуации. А создавать 40 графиков на каждый магазин это не возможно.
Это мой первый опыт связи табельного учета с Зарплатой. Подскажите как сделать правильно и оптимально.
Не изменяются размеры подписей и не перетаскиваются в ос-1.frf БЭСТ 4 плюс.
 
Подскажите, как продублировать справа на последнем листе ос-1.frf такой же состав подписей принимающей стороны, как и передающей. (обведено красным). Попробовал уменьшить размеры - не изменяются, перетащить - тоже не вышло.
Копировать, вставить - получилось - но вниз с левого верхнего угла также не перетаскивается в чем дело?
И как можно сразу блоком скопировать подисантов, а то поодиночке всех выставлять муторно.
Изменено: ВАЛЕРИЙ БОНДАРЧУК - 19.12.2012 06:43:48
Где заполнить поле подразделение финансирования?
 
Хотим использовать в параметрах расчета проводки по зарплате P10 код подразделение финансирования. не можем найти поле где привязать его к структурным подразделениям.
Версия хозрасчетная 12,01 SP96
Терминальный доступ на 1 р.м.
 
Сеть на Б4+ на 5 компьютеров Windows XP. Сильный только основной, за ним работает гл. бухгалтер.
Остальные компьютеры старые.
Возможно ли сделать терминал на 1 машине, там работает выписка накладных, используя Удаленный доступ XP?
То есть все работают по старинке, а выписка в терминале, что бы у гл. бухгалтера и у нее было быстродействие, а остальных так и устраивает существующая скорость.
Изменено: ВАЛЕРИЙ БОНДАРЧУК - 18.11.2012 13:24:17
Странная рамка на предварительном просмотре.
 
Здравствуйте, неожиданно на одном компьютере из всех, на предварительный просмотре в фастрепорте появляется голубая рамка. С компьютером до этого никаких телодвижений не делали.
В чем проблема? Может быть кто-то подскажет?
Неправильное представление цифр в печатной форме.
 
Здравствуйте.
Столкнулся с 2 проблемами в торг-12,
переставил местами кол-во мест и вдруг возникло 2 непонятности.
1 - почему то срезается верхушка цифр в кол-ве на листе, если позиций товара больше чем 23
вроде бы все запрограммировано как сверху и снизу, но именно в этой ячейке неправильно представляется цифра
2 - почему то не все цифры в столбцах прижимаются к самому краю интересно из-за чего?
Изменено: ВАЛЕРИЙ БОНДАРЧУК - 07.11.2012 22:17:26
Проверка всех строк накладной
 
Поступило предложение, видеть цену за килограмм.
Применил доп. еденицы.
Но теперь возникла ситуация, когда операторы не переключают цену за коробку,
а так и переносят за кг.
Написал условие на проверку накладной.
Но оно срабатывает только на первую строку.
Как запрограммировать чтоб проверяла все строки?

Код
begin
if [DialogForm.STROKI."Едизмерения_расхода"]=[DialogForm.STROKI."Доп_ЕИ1"] then
   begin
    MessageBox('исправьте кг на коробки','Внимание',mb_Ok);
    modalresult:=mrCancel;
    end
Else
    modalresult:=mrOK;
end
Изменено: ВАЛЕРИЙ БОНДАРЧУК - 02.11.2012 07:39:54
Создание шаблона MS EXCEL
 
Б-4+ SP88
Задача.
Необходимо добавить в реестр платежных поручений наименование фирмы из карточки предприятия или забивать значение жестко.
Прочитал создание шаблона.
Вопросы.
1. Хочется создать шаблон на основе имеющегося в БЭСТЕ.
Как сохранить все размеры и столбцы из формируемой xls в шаблоне xlt.
Если создавать как в документации, то все колонки одинаковые. Только присутствует возможность привязки значение полей.
2. Вопрос как организовать итоговый подвал отчета. Ведь количество строк различное, а подсчет итогов в экселе жестко привязан к строке.
Например видим =ПРОМЕЖУТОЧНЫЕ.ИТОГИ(9;D4:D11)
Прилагаю формы реестра было и стало.
В ячейке А2 добавлено ООО САМСОН
Если есть возможность прикрепите к описанию готовый xlt.
Внедрение изображения по условию.
 
БЭСТ 4+ SP 71
К накладной формируем качественное удостоверение.
В нем присутствует изображение значков Росстандартов. В верхней части шапки печатной формы. Обычно это два значка. Но при присутствии продукции группы соки должен быть еще и Третий знак Росстандарта. Разработал две формы с двумя и одним значком. Но теперь очень много заказов, и у них трудности по выборке продукции, чтобы отдельно печатать соки. Возможно ли организовать это в одной форме качественного удостоверения, чтобы в ней появлялось один , или два, или три изображения знаков Росстандарта.
Изменено: ВАЛЕРИЙ БОНДАРЧУК - 07.04.2011 10:10:04
Платежное поручение спроверками на ошибки.
 
Срочно нужна помощь.
Как решить это в ФастРепорте.
Стандартнае платежное поручение из типовой поставке.
Б4+ SP60
Необходимо проконтролировать 2 параметра.
а)Длина основания платежа не более 210 знаков.
см. тему
http://www.bestnet.ru/support/forum/index.php?PAGE_NAME=read&FID=10&TID=4515

так как платежные поручения не передают по клиент банку, то можно, наверное и запрограммировать сразу обрезание с правого края с учетом спецсимвола перехода на новую строку и выделение НДС. Пусть на бумаге все будет правильно, а в БЭСТ и так есть сойдет.
Например, "Оплата за товар по счету ... 446, 447, 448, 449 уже 215 символов (знак перевода каретки)в том числе НДС 18% - 18.00" итого 243 символа.
Чтоб преобразовалось в "Оплата за товар по счету ... 441 (знак перевода каретки)
в том числе НДС 18% - 18.00" - не более 210 символов.

б) И подставить в реквизиты текущие банковские реквизиты получателя
см. тему.
http://www.bestnet.ru/support/forum/index.php?PAGE_NAME=read&FID=11&TID=4516

Это наверное возможно, если создать sql - запрос к partner.dbf на основании ИНН Получателя,
Тут наверное 2 шага - 1 подставить новые, если они изменились, и
2 сообщить бухгалтеру о необходимости в пп на поле получатель
вызвать справочник и перенести данный с карточки партнера "004465"
Изменено: ВАЛЕРИЙ БОНДАРЧУК - 25.12.2010 11:40:44
Проверка реквизитов платежного поручения при копировании.
 
БЭСТ 4 + SP 60
Крупная розничная сеть.
Проводит оплату поставщикам через отсрочку по выставленным реестрам поставленных накладных.
В реестре нет банковских реквизитов. Зачастую, при изменении банка поставщик приносит договор о дополнительном соглашении по новым счетам.
Бухгалтеры, не множат карточку агента, а правят изменившиеся значения в существующей.
Иногда передают это доп соглашение бухгалтеру расчетного счета, для контроля.
Технология работы.
Есть реестры документов на оплату Например, Фирма "Грустный молочник" представила реестр поставленных накладных в магазин за неделю. оплата по договору через 20 дней.
Сотрудник торгового отдела, через 20 дней передает его в бухгалтерию на оплату. Бухгалтер поиском находит предыдущий платеж, F5 копирует, набивает сумму и если помнит, что вроде бы реквизиты поменялись, то возвращается на поле Получатель, F2 находит получателя, энтером переносит его в платежку. Становятся новые реквизиты.
И так каждый раз, если она помнит, что были изменения.
Тем более, что поиск у нас идет сверху вниз, и всегда будет у получателя старые реквизиты.
Задача. Возможно ли при открытии скопированного документа, проверять по ИНН карточку партнера и подставлять его если расчётный счет изменился.
У торговой сети идет печать платежек, то есть если проверка на запись документа, это испорченные экземпляры, при изменении банковских реквизитов.
Длина основания платежа 210 знаков.
 
БЭСТ4+ 12.01. SP 60
Банк возвращает платежки при длине основания больше 210 знаков.
Как можно это решить?
1. Изменить структуру файла rsdoc.dbf поле osnov_ с 255 до 210.
Возможно ли это сделать стандартными средствам БЭСТ?
Так как идет уменьшение длины, то наверное, это никак не повлияет на работоспособность программы.
Если использовать FOX то какой версии?
Приближение границ ценников.
 
БЭСТ 4+ 12,01
SP 60
В приходе, Товары, Готовая продукция,
Привязал печать ценников.
Подскажите пожалуйста, как организовать форму вида ценников, что бы они примыкали краями друг к другу.
Это удобно, при вырезании ценника. Сейчас между ними пустой промежуток.
БЭСТ КПМ4+ и считыватели магнитных карт.
 
Добрый день всем.
Заказчик хочет внедрить систему магнитных дисконтных карт.
Плюс в том, что информация о владельце , его скидках и сумме покупок находится
на этой карте и можно считать последние ее состояния.
Например, общая сумма скопившихся покупок уже может давать 7% скидки.
Возможно ди это применить в КПМ, то есть считать данные и записать новые.
Предлагаемые варианты считывателей карт Зебакс170 и Посифлекс
Оповещение о приходе файла products.dbf
 
Добрый день всем.
Заказчики провели сеть к БЭСТ-КПМ.
Раньше носили на флешке и сразу обновляли.
Спрашивают, почему касса не сигнализирует кассиру
о появлении нового файла с товаром.
У меня БЭСТ настроена на выгрузку только products.dbf.
Может надо еще и флаг-файл выгружать Вопрос
Или флаг файл только на дополнение таблицы, а не полную замену Вопрос
БЭСТ КПМ+ и фискальный регистратор Wincor NIXDORF
 
Добрый день всем.
Фирма торгует итальянской одеждой.
Работают на Супермаг 2000 от фирмы Сервис плюс г. Москва.
Решили поставить БЭСТ_КПМ+.
Вопрос есть ли возможность использовать ФР марки Wincor NIXDORF MF- EJ связь через com-port,
зарегистрированный в реестрах как СП-101ФР-К?
Второй Вопрос. Проблема организации. Почему-то не удается поставить в этом магазине
культуру наклеивания ценников. Боролись, :rupor: боролись, :rupor: да не побороли. :sad:
Если ценника нет, то несут что-то похожее с ценником где он есть или примерно ищут по списку товара. Отсюда пересортица.
Возможно ли использовать два штрих-кода на одну позицию? То есть при приеме сканируют 8-ми или 13-ти значный код производителя, затем заводят в БЭСТ4+ и присваивают свой 13-ти значный код. На КПМ переносят два кода, тогда если нарушена культура - нет ценника :surprise:, считывают код производителя и он найдет эту юбку. :lol:

Третий Вопрос, какой терминал сбора данных посоветуете приобрести для оприходывания товара
или ревизии в магазине одежды? Связь с БЭСТ 4+ обязательна.
Изменено: ВАЛЕРИЙ БОНДАРЧУК - 22.11.2009 08:21:43
Ошибка Неизвестная функция _BP Arguments при расчете табличноо документа
 
Добрый день.
Неожиданно во всех рабочих базах при расчете в табличных документах
двух начисление 019 Отпуск по календарным дням
S25 Пособие по уходу за ребенком до 1.5 лет
появляется ошибка

******************************* Error log file ********************************



Date ............: 30/09/09
Time ............: 14:00:49
Available Memory : 248644

-------------------------- Environmental Information --------------------------

Exact is ........: Off
Fixed is ........: Off
Decimals is at ..: 2
Date Format is ..: dd/mm/yy
Epoch is ........: 1920
Path is .........: Z:\B4_PLUS\IPPODR\;Z:\B4_PLUS\IPPODR\SALARY\;Z:\B4_PLUS\IPPODR\SALARY\ARC\;Z:\B4_PLUS\IPPODR\SALARY\NP\
Default is ......:
Exclusive is ....: On
SoftSeek is .....: Off
Unique is .......: Off
Deleted is ......: On
Cancel is .......: On
Debug is ........: True
Color is ........: N/BG,W+/N,N/N,N/N,W+/N
Cursor is .......: 0
Console is ......: On
Alternate is ....: Off
AltFile is ......:
Device is .......: SCREEN
Printer is ......: False
PrintFile is ....: PRN
Margin is .......: 0
Bell is .........: Off
Confirm is ......: Off
Escape is .......: On
Insert is .......: Off
Intensity is ....: On
Scoreboard is ...: Off
Delimeters is ...: Off
Delimchars em ...: ::
Wrap is .........: On
Message is ......: 24
MCenter is ......: On

===========================Detailed Work Area Items============================


++++++++++++++++++++ Internal Error Handling Information +++++++++++++++++++++

Subsystem Call ..: BASE
System Code .....: 1001
Default Status ..: False
Description .....: ЌҐЁ§ўҐбв­ п дг­ЄжЁп
Operation .......: _BP
Arguments .......: [ 1] = Type: N Val: -12
Involved File ...:
Dos Error Code ..: 0

Trace Through:
----------------
_BP : 0 in Module:
(b)FORMULPARSBLOCK : 887 in Module:
(b)TDCALCULATE : 2,833 in Module: u_tdocs.prg
DBEVAL : 0 in Module:
TDCALCULATE : 2,833 in Module: u_tdocs.prg
(b)TABDOCLINES : 1,556 in Module: u_tdocs.prg
QBROWSE : 297 in Module: s_browse.prg
TABDOCLINES : 1,590 in Module: u_tdocs.prg
(b)TABDOCEDIT : 1,444 in Module: u_tdocs.prg
QINPUT : 1,224 in Module: s_lib.prg
TABDOCEDIT : 1,474 in Module: u_tdocs.prg
(b)TABDOCLIST : 1,203 in Module: u_tdocs.prg
INITLIST : 700 in Module: s_lib.prg
TABDOCLIST : 1,280 in Module: u_tdocs.prg
(b)TABDOCS : 968 in Module: u_tdocs.prg
INITLIST : 700 in Module: s_lib.prg
TABDOCS : 1,053 in Module: u_tdocs.prg
(b)QMENU : 287 in Module:
QMENU : 287 in Module: creamenu.prg
QMENU : 285 in Module: creamenu.prg
MAIN : 208 in Module: m_salary.prg


Video Screen Dump

+--------------------------------------------------------------------------------+
|є є ЫЫЫЫЫЫЫЫЫЫЫЫЫЫЫЫЫЫЫЫЫЫЫЫ°°°°°°°°°°°°°°°°°°°°°°°°°°°°°° є є|
|Error BASE/1001 Неизвестная функция: _BP Arguments: ( [ 1] = Type: N Val: |
| -12) ИННННННННННННННННННННННННННННННННННННННННННННННННННННННННј є|
|єє|
|Error at ...: _BP(0) in Module:є|
|Called from : (b)FORMULPARSBLOCK(887) in Module:є|
|Called from : (b)TDCALCULATE(2833) in Module: u_tdocs.prg є|
|Called from : DBEVAL(0) in Module:є|
|Called from : TDCALCULATE(2833) in Module: u_tdocs.prgДДДДДДДДДДДДДДДДДДДДДДДДє|
|Called from : (b)TABDOCLINES(1556) in Module: u_tdocs.prg 0.00 0.00є|
|Called from : QBROWSE(297) in Module: s_browse.prgНННННННННННННННННННННННННННННј|
|Called from : TABDOCLINES(1590) in Module: u_tdocs.prg F8:“¤ «Ёвм F9:ЏҐз вм |
|Called from : (b)TABDOCEDIT(1444) in Module: u_tdocs.prg Tab:‡ Ј®«®ў®Є |
|Called from : QINPUT(1224) in Module: s_lib.prg|
|Called from : TABDOCEDIT(1474) in Module: u_tdocs.prg |
|Called from : (b)TABDOCLIST(1203) in Module: u_tdocs.prg |
|Called from : INITLIST(700) in Module: s_lib.prg|
|Called from : TABDOCLIST(1280) in Module: u_tdocs.prg |
|Called from : (b)TABDOCS(968) in Module: u_tdocs.prg |
|Called from : INITLIST(700) in Module: s_lib.prg|
|Called from : TABDOCS(1053) in Module: u_tdocs.prg|
|Called from : (b)QMENU(287) in Module:|
|Called from : QMENU(287) in Module: creamenu.prg|
|Called from : QMENU(285) in Module: creamenu.prg|
|Called from : MAIN(208) in Module: m_salary.prg|
+--------------------------------------------------------------------------------+


Помогите советом, поиск по форумам ответа не дал.
ГРУППОВЫЕ ОПЕРАЦИИ . УРОК 1. ВЫДЕЛЯЕМ АНАЛИТИКУ.
 
Добрый день всем.
БЭСТ 5.
Начнем освоение написание групповых операций, которые значительно облегчают
ведение многосегментных проводок.
Основное правило моих уроков - это подробнейшее описание шагов. Пусть и подробнейше, но зато в дальнейшем очень ясна логика, что позволяет модифицировать. Предлагаемый листинг программы, написан на демоверсии БЭСТ5, поэтому его легко запустить на ваших демобазах.
Также текст программы приведен в терминальном учебном зале компании БЭСТ
по адресу http://demo.bestnet.ru
правда там не действует "БУФЕР ОБМЕНА ДАННЫМИ", :wave:
Поэтому текст программы краток и мал.
Ввиду разности габаритов листинга и форума, то часть длинной строки перенеслась вначало без ремарки "*", поставьте пожалуста в тексте программы.
Итак начинаем.
Раздел ФИНАНСЫ \ Главная книга\ Формирование справочников\ Групповые операции.
F4- создаем новую операцию. Распределение оплат.
Применение - оба раза Да.
Копируем приведенный листинг в тело программы.
TAB - СОХРАНИТЬ.
Запускаем Групповую операцию. выше в разделе Книга хозяйственных операций. ALT+F4. Выбираем из списка F2/

Цитата
ПРИМЕР 1 * Распределение оплат в страховой организации
* Постановка задачи.
* В конце месяца агент одним платежом пересылает в Страховую компанию
* сумму взносов. Приходуется в банке одной проводкой.
* Затем он присылает по факсу отчет за прошлый месяц, в котором расписывается
* кто заплатил, какой вид страхования, сумма платежа.
*
* Операция разноски по платежам проводилась в АРМ главного бухгалтера. Там три проводки.
* Дт77-8-партнер-вид страх.Кр77-1-не жизнь-вид страх-я-партнер-договор страх-я
* Дт77-1-не жизнь-вид страхов-я.-партнер-договор страх-я.Кр92-1-не жизнь-вид страх-я.
* Дт92-1-нежизнь-вид страх.Кр79-2-000092 Каз. филиал.
*
* Вначале была настроена Типовая операция.
* Но минус этого решения очень много видов страхования, поэтому в
* каждой проводке приходилось пробегать по полям и менять аналитику. Поступило предложение
* дать возможность скопировать связку уже набранных типовых операций. Так как в основном
* суммы одинаковые - 5 или 10 рублей. Зная, что это в БЭСТ 5 невозможно, я предложил это
* описать Групповой операцией. Что позволит им ввести только один раз аналитику счета,
* а все остальное будет проделано автоматически.
* Еще один момент автоматизации, дата вступления в силу договора, она бывает разной,
* поэтому при вводе она видна.
* При работе цикла "ПОКА" - не обнуляются данные,
* поскольку - виды страхования повторяются и могут быть одинаковые суммы.
* На предложение бухгалтерам обнулить сумму в форме, получил предложение -оставить от предыдущей
* проводки.
* Итак начинаем. Наш практический урок.
* Используем структуру групповой операции "распределение затрат.
* Вначале идут параметры М - это поле Содержание хозяйственной операции, так как
* проводок три, то и "М" определим для каждой свою.
* Пусть будет примерно так:


М = "Распределение платежей"
М1 = "Распределение платежей1"
М2 = "Распределение платежей2"


* Мышкой выделяем М = "Распределение платежей", Сnrl+C - копируем.
* становимся на строку ниже Shift+Insert или Сtrl+V - вставить.
* Добавляем значения к М 1, 2 - что определяет их использование в проводках 2 и 3.
* Так как в реальной задаче проводки имеют счета и аналитики сложные, применяем в
* нашем уроке аналитические счета из демобазы ХОЗРАСЧЕТНОЙ,
*
* Главная книга \Ведение системы счетов \Сегменты аналитики на счетах.
* счет 6231- не имет уровней аналитики
* Добавляем ему 4 уровня
* Код измерения разделитель Обязат. Длина
* Бренд - Да 6
* Вид деятельности - Да 10
* Партнеры - Да 6
* ДоговорыПродаж - Да 19

* счет 6241 2 уровня
*
* Код измерения разделитель Обязат. Длина
* Партнеры - Да 6
* Вид деятельности - Да 10
*
* счет 6243 - 2 уровня.
*
* Код измерения разделитель Обязат. Длина
* Бренд - Да 6
* Вид деятельности - Да 10
*
* счет 6245 - 1 уровень
* Код измерения разделитель Обязат. Длина
* Подразделения - Да 6
*
* Дополням аналитику измерения
* Настройка\ Общие данные\ Аналитические измерения\ виды измерений\
* выбираем Бренд \Закладка Значения
* добавляем к MILANO, 000002 НЕЖИЗНЬ (т.е. страхование любых случаев, кроме ЖИЗНИ)
* Вид деятельности \Закладка Значения F4 0000000001 - 1
* что бы урок хоть как то приблизился к действительности. Добавим "реальную" аналитику
* на счет 6245
* Настройка\ Общие данные\ Персонал предприятия\ Структурные подразделения\
* добавим 000092 - Казанский филиал.
* Вроде бы все. Демоверсия готова к тренажу.

* Применяемые переменные:
* А4 - дата документа
* А5 - аналитика страхования


* Раньше в БЭСТ4 я определял длину счета и аналитики
* а с многосегментной аналитикой не знал как указывать.
* Благо теперь можно писать просто "СЧЕТ" и "ШАУ"
* проблема снята.

* Правила заполнения.
* Если дата не изменилась спускаемся курсором вниз.
* На поле номер счета. Хоть он и заполнен. ОБЯЗАТЕЛЬНО ПРОЙТИСЬ ЭНТЕРОМ,
* ЧТОБЫ ПРОГРАММА СВЯЗАЛАСЬ С ПАРАМЕТРАМИ ЭТОГО СЧЕТА. ОДИН ЭНТЕР - ОБЪЯВЛЯЕТСЯ СЧЕТ,
* ВТОРОЙ ЭНТЕР - ОКОНЧАНИЕ РЕДАКТИРОВАНИЯ. СПУСКАЕМСЯ КУРСОРОМ НА "АНАЛИТИКА СЧЕТА"
* 2 РАЗА ЭНТЕР - ОТКРЫВАЮТСЯ СЕГМЕНТЫ АНАЛИТИКИ. ТАК КАК ПОЛЯ АНАЛИТИКИ ОБЯЗАТЕЛЬНЫ
* К ЗАПОЛНЕНИЮ ТО ПОСЛЕ НАЖАТИЯ ЭНТЕР БУДУТ ОТКРЫВАТЬСЯ СПРАВОЧНИКИ СЕГМЕНТОВ.
* На первом уровне выбираем НЕЖИЗНЬ, на втором первую, на третьем 000005 АОЗТ "МИР",
* поскольку у него есть договор продаж. И на четвертом - этот договор.
* Энтер.
* Справочник аналитики свернулся. И мы опять в окне ввода.
* Небольшой глюк, все сегменты аналитики свернулись в один. Видно значение только
* первого сегмента. Ничего страшного.Все сегменты появятся в следующем ЦИКЛЕ.
* Курсором спускаемся на сумму. Можно сразу набирать значение, или после нажатия ЭНТЕР.
* Заполнили сумму, F10 - запустить обработку.
* Программа выдает следующий экран ввода.
* И о чудо, все сегменты аналитики предыдущего ввода ПРИСУТСТВУЮТ!
* Но это обманчивое впечатление, если вы энтером не подтвердите НОМЕР СЧЕТА "6231"
* вся аналитика исчезнет. Поскольку соединение с параметрами счета во втором цикле
* не произошло. Только 2 раза ЭНТЕР и вся аналитика открывается. Будьте внимательны1
* Поправляем в аналитике нужные сегменты. Сумму.F10.- продолжить.
* Эскейпом завершаем ввод новых данных.
* Вся группа проводок появляется в буфере.
* F10 - заносим проводки в Книгу хозяйственных операций.


А3="6231"
А4 = ДАТА()

ПОКА (1=1)

* Цикл ПОКА в данном случае работает до срабатывания клавиши Эскейп.
* Могут быть и другие условия.

* Внимательно будьте при добавлении строк ввода. Следите за пунктуацией.
* Строки кончаются запятая - затем, точка с запятой.
* Последнее поле кончается только ТОЧКОЙ с запятой.

ВВОД(("Дата окончания расчета......","А4","Д"),;
("Номер счета....","А3","СЧЕТ"),;
("Аналитика счета..........","А5","ШАУ"),;
("СУММА ..........","Z","Ч","99999.99");
)
* Определям алгоритмы
* В демозадаче меняем счет 77-1 на 6231
* 77-8 на 6241
* 92-1 на 6243
* 79-2 на 6245
* Надо вычленить из аналитики кусок нужных значений.
* Вызываем помощь F1. Листая страницы в разделе ОБЩЕСИСТЕМНЫЕ ФУНКЦИИ.
* ПОД_СТР. Это нам подходит.
* Вычленяем из аналитики 6231 значение "Партнер" он было третьим
* и "Вид" был вторым. Состав 6-10-6-19 надо переформировать в 6-10.
* Сначала выделяем параметр "ВИД" он стоит вторым после 6-ти значного жизни/нежизнь.
* Итак 6 знаков нежизни плюс знак разделитель черта. Итого 7, значит будем выделять с
* с восьмого. Длина 10.
* Команда ВЫВОД помогает при отладке приложения, позволяет смотреть какое значение
* переменная принимает.
* Например,Аналитика разделяется "-", этот знак надо игнорировать.
* Можете попробовать заменив А6=ПОД_СТР(А5,8,10) на А6=ПОД_СТР(А5,7,10)
* ВЫВОД значения покажет -000000000. Что есть ошибочно.

А6=ПОД_СТР(А5,8,10)
* ВЫВОД А6

* Вычленяем из аналитики 6231 значение партнер был третьим
* и вид был вторым. состав 6-10-6-19 надо переформировать в 6-10.
* сначало выделяем параметр "ПАРТНЕР" он стоит третьим после 16-ти значного жизни/нежизнь
* и ВИД
* итак 16 знаков плюс 2 знака разделитель "черта". Итого 18, значит будем выделять с
* с 19-го. Длина 6.

А7=ПОД_СТР(А5,19,6)
* ВЫВОД А7

* вычленяем из аналитики 6231 параметр "НЕ/ЖИЗНЬ" он стоит первым.
* Значит будем выделять с 1 по 6

А8=ПОД_СТР(А5,1,6)
* ВЫВОД А8

* Итак получили А6 -ВИД
* А7 - ПАРТНЕР
* А8 - НЕ/ЖИЗНЬ



* Начинаем склеивать значения аналитики для первой проводки. Это ПАРТНЕР и ВИД
* Так как разделитель черта включать ее в общий кусок не надо, НО ПРОБЕЛ СТАВИТЬ ОБЯЗА-
* ТЕЛЬНО. (ЧАС ПОТРАТИЛ НА ПОИСК ЭТОГО ПРОБЕЛА) БЭСТ сама поставит разделитель.

А9=А7+" "+А6
ВЫВОД А9
* Начинаем склеивать значения для второй проводки. Это НЕ/ЖИЗНЬ и ВИД

А10=А8+" "+А6
ВЫВОД А7

* Итак имеем А9 - ПАРТНЕР+ВИД
* А10 -НЕ/ЖИЗНЬ + ВИД
*



* Формируем проводки. Счета можно объявлять явно -заключив в кавычки.
* Итак 77-8 (6241) с аналитикой ПАРТНЕР + ВИД
* В БЭСТ есть условие, что счет от аналитики отделяется точкой.
* Поэтому и склеиваем ТРИ параметра: СЧЕТ, Разделитель и АНАЛИТИКУ.
А11="6241"+"."+А9

* Кредитовая ей сторона складывается из счета и аналитики запроса ВВОДА
А12=А3+"."+А5

* Вторая проводка. Дебет равен кредиту первой проводки. Значит А12
* А Кредитовая сторона 92-1 (6243) с аналитикой НЕ/ЖИЗНЬ+ВИД

А13="6243"+"."+А10

* Третья проводка. Дебет равен кредиту второй проводки. Значит А13
* А Кредитовая сторона 79-2 (6245) с аналитикой всегда равной подразделению
* 000092 - Казанский филиал.

А14="6245"+"."+"000092"

* ПАРАМЕТРЫ ПРОВОДКИ.
* первый параметр А4 - ДАТА - берется из формы ввода.
* второй параметр "" - номер документа. Бухгалтера его не заполняют.
* третий параметр -Дебетовая сторона.
* четвертый параметр - Кредитовая сторона.
* пятый параметр - Содержание операции.
* шестой параметр - Сумма проводки.

П( А4, "", А11, А12, М, Z)
П( А4, "", А12, А13, М1, Z)
П( А4, "", А13, А14, М2, Z)

ВСЕ_ПОКА

* Вот и конец первому уроку.
* Замеченные недостатки.
* 1. При вызова помощи нет курсора, показателя рядов.
* Трудно ориентироваться в каком месте ты находишься.
* 2. Невозможно выделить и скопировать из помощи текст.
* 3. Программа не запоминает положение счета, при следующем вводе.
* Приходится его объявлять двумя Энтерами.
* Основная находка этого урока, Это то, что при выделении куска аналитики
* разделитель "-" не включается в вырезаемый блок.
* Но при склеивании в новую аналитику разделитель не указывается,но на его
* месте должен быть пробел!!
* С уважением, Валерий Иванович Бондарчук.
* Удачи всем в написании групповых операций.
* P.S. В рабочем варианте поставте ремарки звездочки "*" в начале строк
* 182 и 186, чтобы не отображались рабочие моменты отладки групповой операции.
Страницы: Пред. 1 2