Отправляет email-рассылки с помощью сервиса Sendsay

1С: грабли, камни и бриллианты

  Все выпуски  

1С: грабли, камни и бриллианты


Служба Рассылок Subscribe.Ru
Здравствуйте, уважаемые!
Вашему взору представлена рассылка "1С: грабли, камни и бриллианты" и
я ее ведущий Кружаев Валерий  krug@tula.net

Выпуск 10.


Сегодня опять письма. До освобождения от обещанных обязанностей осталось 4 дня.
Потом будем наконец рассматривать что-нибудь учебное.


______________________________________________________________________________
Добрый день.
    Валерий, Вы можете что-то рассказать об компоненте
1С:Предприятие 7.7. Web-расширение. Может есть в инете где-то демо
версия, чтобы поглядеть на ее возможности.

 Заранее благодарен, Андрей.
--------------------------------------------------------
Увы, необходимости в этой компоненте не было, поэтому для меня это белое пятно.
Со своими удаленными складами с использованием компоненты по управлению распределенными
ИБ я связываюсь по модему, используя чужую программу для доступа вручную к их
диску.


______________________________________________________________________________
На вопрос :
        Спасибо за рассылку - очень удобный и доступный способ поделиться опытом.
В нашей
фирме установлена 1С под SQL. В предыдущей рассылке была описана проблема, когда
пересчет справочника "Сотрудники" начинается с 1753 года. У нас тоже была такая
проблема, если кого-то еще это интересует, то с помощью сервисной службы 1С удалось
разобраться, что это происходит, когда в базе существует документ с нулевой датой,
которую SQL интерпретирует как 1753 год. Можно удалить его с помощью средств
SQL, а можно и найти в журнале документов и изменить дату. Каким образом такие
документы могут записываться, остается загадкой.
Сейчас у нас возникла такая проблема, что мы не можем протестировать базу. При
запуске процедуры конфигуратор выдает сообщение "!!! Проверка кофигурации...
- Неустранимая ошибка" и обработка прерывается. Добавление объектов и запись
конфигурации проходит без ошибок. Мы пытаемся разобраться, в чем дело, но, возможно,
кто-то уже сталкивался с такой проблемой и знает способы её решения.

Есть ответ. Пусть сделают выгрузку данных, а потом загрузку в
дбф.формат и запустят туже обработку. Обратить внимание на ошибки
(Обычно нарушается кодировка справочников),исправить их. Сделать
выгрузку данных и загрузку в формат SQL. Все.
--------------------------------------------------------
На заметку тем, кому это надо


______________________________________________________________________________
  Добрый день!
    Помогите, плиз, разобраться с такой вещью. Предположим, в 1с 7.7
    нужно программно создать и записать новый элемент справочника. В
    справочнике используется автонумерация и контроль уникальности
    кодов. Если просто использовать код вроде этого:
    "Справ.Новый();
    Справ.Реквизит1=...;
    ...
    Справ.Записать()
    "
    то система выдает ошибку "код не уникальный" (поскольку в
    этом модуле реквизиту "Код" значение не присваивалось, то,
    очевидно, 1С обнуляет его). Необходимо как-то
    получить новый код для этого элемента. Я конечено понимаю, что
    можно перебрать все элементы справочника, найти наибольший код и
    увеличить его на 1, скажем, но ведь это страшно тупой подход.
    Может, подскажете более простой вариант, поскольку никаких
    встроенных функций для этого я не нашел.

    Всего наилучшего, Александр (shu_3d@mailru.com).
--------------------------------------------------------
Вообще-то по умолчанию при создании нового элемента система сама назначает уникальный
код, но если у вас по какой-то причине с этим произошел сбой, попробуйте метод
Справ.УстановитьНовыйКод();
А скорее всего у вас проявились грабли, на которые мы уже наступали. Поищите
в архиве рассылки.


______________________________________________________________________________
Здравствуйте!!!

Я занимаюсь в 1С Зарплатой и Кадрами. Так что мне этот вопрос оказался близок.

Текст вопроса:
----------------------------------

Здравствуйте Валерий.

  Читаю  Вашу рассылку, очень нравится. Уже нашел для себя интересное.
  У  меня  вот  какой  вопрос:  Работаю  в  Зарплате+Кадры  034  релиз
  (Предприятие 018), но в программировании под 1С слабак и хотелось бы
  узнать,  как  поправить расчетный листок, чтобы в нем в правой части
  (удержания)   отображался  не  только  подоходный  налог,  алименты,
  профвзносы, но и аванс.

-----------------------------------------

У меня есть конфигурация "Зарплата и Кадры" (релиз 28).
Смотрела я именно ее, думаю, что она мало чем отличается от 34.

Отчет "РасчетныеЛистки" (если вы ничего не меняли) в колонке удержаний выводит
расчеты, определенные в группе "ВсеУдержания". Но корректировать эту группу я
бы вам не советовала, так как на ней завязано вычисление начального сальдо.
В группу "ВсеУдержания" включен вид расчета "ВыплатаЧерезБанк". Если у вас аванс
выплачивается через кассу (соответствует виду расчета "ВыплатаЧерезКассу"), то
в колонке "Удержания" в  расчетном листке он показан не будет. Почему вид расчета
"ВыплатаЧерезБанк" включен во "ВсеУдержания", а вид расчета "ВыплатаЧерезКассу"
- нет, я не знаю до сих пор. :)

Но перейдем к делу.

В процедуре "ПечататьРЛ"

1. В тексте запроса по удержаниям строку

|Условие(ВР.ВходитВГруппу(ГруппаРасчетов.ВсеУдержания)=1);";

заменить на:

|Условие((ВР.ВходитВГруппу(ГруппаРасчетов.ВсеУдержания)=1)
или(ВР=ВидРасчета.ВыплатаЧерезКассу));";

(мой комментарий)

Этот вариант используется для выплат невалютных. Для валютных требуется еще добавить
в этот список вид расчета "ВыплатаЧерезКассуВалютный".

2. В текст этого же запроса в определениях функций строку

|Функция Удерж = Сумма(Рез) Когда(
ВР.ВходитВГруппу(ГруппаРасчетов.ВсеУдержания)=1);

заменить на:

|Функция Удерж = Сумма(Рез) Когда
((ВР.ВходитВГруппу(ГруппаРасчетов.ВсеУдержания)=1)
или(ВР=ВидРасчета.ВыплатаЧерезКассу));

(мой комментарий)

Если вы в условие добавили вид расчета "ВыплатаЧерезКассуВалютный", то требуется
в определение функции добавить этот вид тоже.
Если вы определение функции оставите без изменений (как в базовом варианте),
то указанный вид выплаты в запрос не войдет. :((() - Неприятно, но факт!

3. Перед выводом последних секций расчетного листка перед строкой

Таб.ВывестиСекцию("НачСальдо");

вставить строку:

СальдоКон=СальдоКон+Выплачено-Невыплачено;

(мои комментарии)

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

Вот и все хитрости...:)

(Отдельно)

В расчетном листке все выплаты выводятся так, как описано у вас в справочнике
"ВидыРасчетов", в противном случае - как в конфигурации. Аванс, выплата зарплаты,
межрасчетная выплата имеют конечным итогом один вид расчета, поэтому детализации
по виду выплаты в типовой конфигурации не
предусматривается. Чтобы их отразить в расчетном листке, вам придется прибегнуть
к еще другим ухищрениям.
Вообще, у нас расчетные листки переписаны на ТаблицыЗначений, ведется детализация
не только по виду выплаты, но и месяцу начисления, что имеет значение в случае
отпускных и больничных.

Если что-то не получится, пишите мне на

rachevska@iba.com.by

я вышлю вам весь текст программы.

Дина.
--------------------------------------------------------



______________________________________________________________________________
Я решила отправить ответ на вопрос по поводу англоязычной


Смена языка с русского на английский есть в свойствах всей конфигурации на закладке
"Задача".
Но эта замена не распространяется дальше модулей программ, то есть формы для
разработки объектов, меню конфигурации и стандартные элементы меню конечной задачи
остаются без изменения (на русском). Так что японские коллеги, если не знают
русского языка, не смогут программировать для себя свои задачи.
Если они хотят только пользоваться конечным продуктом (то есть разработанной
конфигурацией), то необходимо будет отключить все стандартные элементы меню,
которые отображаются на русском языке.

Если вы согласны со всеми этими ограничениями, то простого подхода к переводу
конфигурации на английский язык нет.
Модули программ, если хотите перевести его на английский, можно сохранить текстовый
файл и заменить все зарезервированные слова, функции, методы и прочее на английский
эквивалент.
Решать эту задачу можно как средствами языка 1С, так и другими.

Что касается визуальных форм, то тут запуском программы не обойдется.
Придется в 1С открывать каждую форму  и переименовывать все видимые элементы.

Совет:
Удобно реквизиту давать синоним, так как 1С предоставляет автоматизированные
возможности по вводу имени на форму (тобишь расшифровка поля). Тогда отпадает
необходимость в корректировке названия уже введенного поля.

Дина.
Rachevska@iba.com.by
--------------------------------------------------------


______________________________________________________________________________
Ответ на вопрос:
----------------------------------------
Сейчас у нас возникла такая проблема, что мы не можем протестировать базу.
При запуске процедуры конфигуратор выдает сообщение "!!! Проверка кофигурации...
- Неустранимая ошибка" и обработка прерывается. Добавление объектов и запись
конфигурации проходит без ошибок. Мы пытаемся разобраться, в чем дело, но, возможно,
кто-то уже сталкивался с такой проблемой и знает способы её решения.
С уважением, Екатерина.
--------------------------------------------
Возможно, но я не уверена, ошибка появляется, если перед тестированием, не выгружая
конфигуратор, сделать выгрузку или загрузку данных.
Ошибка наблюдалась в больших базах данных, возможно, с ошибками при тестировании.
Попробуйте перед тестированием не выполнять никаких операций.

Второй способ: Выгрузить и загрузить данные.

Если база находится на другом компьютере, то, может быть, проблемы в сети.
Попробуйте выполнить тестирование на локальном компьютере.

Причина вторая: мало места на диске для создания временного файла тестирования.

Дина.
rachevska@iba.com.by
--------------------------------------------------------


______________________________________________________________________________
Hello krug,

  Здравствуй Валерий!
  Хочу задать вопрос относительно работы в программе 1С:Предрпиятия7.7
  ,Бухгалтерия 4.2.Согласно письма Министерства финансов РФ от
  27.12.01 №16-00-14/573, какими документами лучше отразить ввод и движение
  имущества, учитываемого в составе основных средств и перешедшего из
  категории малоценных и быстроизнашивающихся предметов.

--
Best regards,
 Гадевич                          mailto:irina_gadevich@mail.ru

--------------------------------------------------------
Каюсь, но я всегда спрашиваю у бухгалтера: "Чё хочешь?", она мне на пальцах раскидывает
и потом я уже пишу то, чего она хочет, не особо вникая в смысл.
Подскажите, кто любит бухгалтерию как науку.

______________________________________________________________________________
Добрый день, Валерий!
У меня такая проблема. Документ заполняется с помощью внешней обработки. В модуле
обработки сравниваются две переменные с одинаковыми значениями типа "Документ":

     Если ПрихДок = ПодчДок.НазначениеПлатежа Тогда

Но программа не считает их равными, хотя в Отладчике я вижу, что это один и тот
же документ. Вот так работает:

     Если СокрЛП(ПрихДок) = СокрЛП(ПодчДок.НазначениеПлатежа) Тогда

и вот так работает:

     ПрихДок.ПолучитьПозицию() = ПодчДок.НазначениеПлатежа.ПолучитьПозицию()

А первый вариант почему не отрабатывает не пойму.


Мингазов Радик
mailto:rm@delta.udm.ru
--------------------------------------------------------
Если создать объект, то его идентификатор указывает на объект, но не на выбранный
элемент, даже если он выбран. Для указания на выбранный элемент следует добавлять
метод-приставку:
Докум.ТекущийДокумент()
Справ.ТекущийЭлемент()
такой вариант указывает конкретно на элемент и этот элемент уже можно сравнивать.
А простое сравнение можно сделать только для выяснения равенства объектов.
Например, если созданы два объекта одного вида.


______________________________________________________________________________
Добрый день, Уважаемый Валерий Владимирович!
Если это возможно помогите решить следующую проблему:
С нового года казначейство подгребло под себя всю внеюджетку гос. образовательных
заведений. Их требование(ссылаются на вышестоящие инстанции - Москву) приносить
платежные поручения  не только на бумаге, но и на дискете в формате *.dbf. У
них  для этого есть программа(опять же присланная из Москвы) очень криво работающая
, ну да это бы еще полбеды, НО ведь приходиться ДВАЖДЫ выполнять одну и туже
работу, в 1С-для того чтобы прошла проводка и в этой "какашке", чтобы сформировать
 dbf- файл и скинуть на дискету.
Нельзя ли это прикрутить к 1С?!

     Для личных писем mailto: dronick@udm.net
     Для служебных писем mailto: p@imt.udm.ru
===============
С Уважением, руководитель КЦ ИМТ Дрожжин Н.И.

--------------------------------------------------------
В 1С существует объект для работы с DBF-файлами: XBase
Знатоки рекомендуют общаться с ним на английском, хотя и так работает вроде.
ДБФ = СоздатьОбъект("XBase");
Он позволяет открывать существующие файлы DBF, создавать новые, переиндексировать.
Подробности излагать долго, но в документации описано подробно.
Да и во встроенном хэлпе вроде можно разобраться.


______________________________________________________________________________
Здравствуйте Валерий!
Не знаю, возможно мой вопрос и не в тему, но у меня к Вам вопрос по бюджетной конфигурации
Бухгалтерии 7.7. Первоначально
был установлен релиз 4 7.70.405, а затем производились обновления. В конечном
итоге до 4 7.70.410, но при этом почему-то не
происходило обновление экономического классификатора, он так и остался в первозданном
виде. Если возможно, то подскажите
чайнику, как обновить этот самый классификатор.
С уважением Владимир.
--------------------------------------------------------
Этот классификатор должен поставляться отдельно и загружаться предусмотренной
для этого обработкой.


______________________________________________________________________________
Приветствую.

Если есть желание, можете обсудить в своей рассылке оригинальный глюк ядра 1С,
связанный с последовательным выполнением нескольких запросов, в результате которого
очередной n-ый запрос выполняется с ошибкой.

Глюк проявляется в типовой конфигурации 1С:Зарплата и Кадры, релиз 7.70.204,
причем только при работе не на "дохлой" машине.
Чтобы вызвать глюк достаточно принять на работу сотрудника и посчитать ему подоходный
налог. На очень быстрых (относительно) машинах вроде Pentium3 1Гц подоходный
всегда = 0.
На машинах класса Pentium 3 666 Mhz из 10 попыток 3 расчитались правильно.
При пошаговом проходе по алгоритму все считается исключительно правильно.
При вставке между запросами пустых циклов вроде:

Для i=1 По 400000 Цикл
КонецЦикла;

тоже все считается хорошо.

В релизе 7.70.205 глюк "решен", но посмотрите как!!!

Производится 10 кратная попытка выполнить запрос и в том случае, если он не выполняется,
тогда происходит возврат.

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

Я сталкивался с ним и ранее при написании собственных отчетов, последовательно
выполняющих несколько запросов (иногда до 10 штук).

Опарин Владимир
Программист ООО "Информ-База"
http://www.informbase.ru
ovv@papillon.ru
--------------------------------------------------------
Забавно. У меня при отключении OLE-базы вылетала ошибка.
Процедура ПриЗакрытии()
        СохранитьЗначение("База",База);
        Если (ТипЗначенияСтр(v7)="OLE") Тогда
                v7.ExecuteBatch("ЗавершитьРаботуСистемы(0);");
        КонецЕсли;
        v7="";
КонецПроцедуры
Оказывается, отключение не успевало за обнулением объекта v7.
Пришлось добавить
Предупреждение("База отключена");
перед V7="", и времени реакции пользователей было достаточно для закрытия базы.
Может, в 1С имеются некоторые псевдо-многозадачные команды, которые считаются
выполненными до их реального завершения и начинается выполнение следующей команды?
Кто что может сказать?


______________________________________________________________________________
Здравствуйте.

 Возникла необходимостmь разбить строку ИНН в платежном поручении на 2
 строки.
 Подскажите как мне это проделать, по возможности поподробнее, просто
 до этого момента изменять в нутри конфигурации ни чего не
 приходилось.

---------------------------
Артем       mailto:artyoml@newmail.ru
---------------------------
--------------------------------------------------------
Вам придется посмотреть в таблице идентификатор этой строки, найти его в модуле
и добавить туда служебную константу РазделительСтрок
Например, ИмяКонстанты = Клиент.ИНН+" "+РазделительСтрок+ Клиент.Адрес;
Что-то типа этого.


______________________________________________________________________________
Добрый день Кружаев Валерий!

Скажите пожалуйста, Ваша рассылка предназначена для пользователей России, т.е.
конфигурация 1С российская? Или это же можно
применять и к украинской конфигурации.

Подскажите пожалуйста может есть где рассылка для украинских пользователей 1С.

Заранее благодарю. Виктория.
--------------------------------------------------------
Принципиальной разницы нет, структуру они не меняли, так что всё то же самое.
Разница такая же, как между Windows англо и русской адаптацией - никакой.


______________________________________________________________________________
Здравствуй Валер..ничего что не на вы? :))) у меня такой вопрос...да..кстати
спасибо за грабельки....абалдеть... особенно
для таких чайников как я.... но я научусь...торжественно клянусь ...короче вот
сам вопрос... попросили сделать в 7-ке
накладную попроще...я о печатной форме...это что в реализации отгруженной продукции...Бухгалтерия
77, так вот...я как
умная Маша прописываю в модуле обращение к таблице новой...которую я обозвал
и создал по образу и подобию родной
только просто наименование кол - во цена и сумма ...ну и так далее...без разных
там транспортных и тому подобное...ну
вроде всё прописал ...получилось ...только как я не говорю что лист у меня книжный..эта
сволочь мне делает
альбомный...в чём я прозевал?? подскажи  а? С уважением Юра
--------------------------------------------------------
У объекта таблица есть такой метод: Таб.ПараметрыСтраницы(,,,,);
Там первый параметр ориентация 1-портрет, 2-ландшафт.
В хэлпе неплохо описано.
Скорее всего ищи там.

______________________________________________________________________________
Добрый день, Валерий!
Ответ на вопрос Екатерины о сбое при тестировании базы.
У меня как-то тоже 1С вылетала при проверке конфигурации.
Проблема решилась случайно. Захотел я добавить новый реквизит в
документ, который давно не трогал. При сохранении 1С то ли закрылась,
то ли заругалась. После этого нашел очень старый архив базы. Архивная
база нормально тестировалась, а глюкавый документ я за это время не
изменял. Взял MD-шник из архива и объединил его с текущим, указав, что
надо заменить глюкавый документ. Теперь база нормально тестируется.
--
С уважением, Сергей.
--------------------------------------------------------
От себя добавлю, что однажды скопировал таблицу из одной конфигурации в другую.
Так у меня полезло сообщение об ошибке
"Фирма.Наименование - значение не представляет агрегатный объект", хотя в той
базе этот реквизит уже давно был удален. Поиски ничего не дали, как он всплыл
- непонятно, в расшифровке ячейки его нет, пришлось удалить строку и нарисовать
ее заново.

______________________________________________________________________________
Здравствуйте, krug.

У меня такой вопрос.
После перезаписи конфига 1С 7.7 отвалились строки в одном из журналов.
Изменения в конфиги никак к нему не относились.

Как заставить 1С построить журналы заново?
--------------------------------------------------------
Не совсем понятно, что значит отвалились.
Попробуйте добавить в идентификатор конфигурации ( в свойствах конфигурации)
какой-нибудь символ (я добавляю _ ), и после этого сохранить конфигурацию.
Дело в том, что при удалении объектов метаданных они не исчезают из файла конфигурации,
а как бы помечаются на удаление.
Реструктуризация, она же "упаковывание" MD-файла происходит только при добавлении
или изменении метаданных, а также, как оказалось, при изменении идентификатора
конфигурации.
Однажды я поудалял все описания и половину документов и журналов, а MD-файл не
изменил своих размеров. Только после добавления этого символа он реструктуризировался
полностью и уменьшился в размерах в 2,5 раза.


Ну вот вроде и всё сказал на сегодня.

Пишите мне о том, что вы хотели бы знать, но стеснялись спросить :)
Приветствуются все предложения, пожелания, а также ругательства в мой адрес.

Только хочу предупредить, что во избежание недоразумений ваши письма должны иметь
явное указание на разрешение или запрещение публикации их в рассылке.
По умолчанию считается, что письмо публиковать разрешено.
Если вы в теле письма указали адрес, я буду его тоже указывать.
Но специально из реквизитов письма адрес извлекаться не будет.
Это нормально и общепринято. Не так ли?
Впрочем, как известно, известные люди имеют в своем использовании больше денежных
знаков...
Так что решать вам, светиться или отсиживаться.

До встречи, господа!

Написать ведущему krug@tula.net
Адрес рассылки: http://subscribe.ru/catalog/inet.review.cool1c
Архив рассылки: http://subscribe.ru/archive/inet.review.cool1c
Рассылки Subscribe.Ru
1С: грабли, камни и бриллианты


http://subscribe.ru/
E-mail: ask@subscribe.ru
Отписаться
Убрать рекламу

В избранное