[1С:Предприятие 7.7] Занимательная передача параметров

Публикация № 57311

Разработка - Практика программирования

23
"Казнить нельзя, помиловать.
Казнить, нельзя помиловать."

(c) Детская сказка

Платформа 1С:Предприятие 7.7 (7.70.023)

Предположим, я написал процедуру:
//---------------------------------------------------------------
Процедура ПередачаПараметров1(Пар1, Пар2=2, Пар3=3) Экспорт
   Сообщить("Пар1="+?(ПустоеЗначение(Пар1)=1,"""Пустой""",Пар1));
   Сообщить("Пар2="+?(ПустоеЗначение(Пар2)=1,"""Пустой""",Пар2));
   Сообщить("Пар3="+?(ПустоеЗначение(Пар3)=1,"""Пустой""",Пар3));
КонецПроцедуры
//---------------------------------------------------------------

И теперь, предположим, хочу ее вызвать, причем опустив первый параметр, т.е. примерно так:
//---------------------------------------------------------------
ПередачаПараметров1( , );
//---------------------------------------------------------------

По идее, я должен получить в строке состояния:
-----------------------------------------------------------------
Пар1="Пустой"
Пар2=2
Пар3=3
-----------------------------------------------------------------

Но, совершенно удивленно получаю следующий результат:
-----------------------------------------------------------------
Пар1="Пустой"
Пар2="Пустой"
Пар3=3
-----------------------------------------------------------------

Хотя, так как для второго параметра задано значение по умолчанию в списке формальных параметров в определении процедуры, то я вообще то, думаю, что совершенно справедливо, ожидал, что у него будет это значение (т.е. =2), но он оказался пустым.

Да, я понимаю, что можно вызвать следующим образом и получить нужный результат:
//---------------------------------------------------------------
ПередачаПараметров1(ПолучитьПустоеЗначение());
//---------------------------------------------------------------

Но, все-таки, давайте заглянем в Help, читаем, четко и ясно в Help'е сказано:
-----------------------------------------------------------------
«Если параметр при вызове процедуры опущен, то он принимает либо установленное по умолчанию значение (если оно есть) либо принимает «пустое» значение (значение неопределенного типа).»
-----------------------------------------------------------------

Ну, хорошо, есть там такие слова:
-----------------------------------------------------------------
«Если параметру задано значение по умолчанию и он является последним в списке, то при вызове процедуры его можно опускать в списке передаваемых фактических параметров и не ставить запятую перед опущенным параметром.»
-----------------------------------------------------------------

Ну, знаете, слово «можно» это еще не означает обязательно. Да и второй параметр в нашем случае не последний, есть еще третий.

Т.е. получается, что при передаче фактических параметров при вызове процедуры, если после последней запятой, фактический параметр опущен, то соответствующему формальному параметру, в любом случае будет присвоено пустое значение, а не значение по умолчанию, которое ему задано.
23

Специальные предложения

Комментарии
Избранное Подписка Сортировка: Древо
1. zyto 07.10.08 06:06 Сейчас в теме
ИМХО опустить параметр = вообще не упоминать об его существовании при вызове процедуры, т.е. ПередачаПараметров1(1) - в данном случае будет Пар1 = 1, Пар2 = 2 и т.д.
А то что ты делаешь - ПередачаПараметров1( , ) -ты передаёшь пустое значение (в 8ке там было бы Неопределено)...
2. ssp_ 140 07.10.08 08:39 Сейчас в теме
Весело. Щас попробовал ПередачаПараметров1(,,). Получил:
Пар1="Пустой"
Пар2=2
Пар3="Пустой"

Чудеса...
25. JohnyDeath 295 07.10.08 17:44 Сейчас в теме
Артур, вот это:
Код
Значение = глШтатныеПараметрыПоУмолчанию_Сложение_3Параметра(,4);
Значение = глШтатныеПараметрыПоУмолчанию_Сложение_3Параметра(4,);
Значение = глШтатныеПараметрыПоУмолчанию_Сложение_3Параметра(4, 1);
Показать полностью

вполне ожидаемые результаты дают (дальше не смотрел).
Единственное о чём надо помнить, ИМХО, так это про последний параметр.
Например вот это:
Код
глШтатныеПараметрыПоУмолчанию_Сложение_3Параметра(, 1);
Показать полностью
я читаю как: Первый - по умолчанию (2), во второй - единица (1), последний - по умолчанию (5) = 8
вот это
Код
Значение = глШтатныеПараметрыПоУмолчанию_Сложение_3Параметра(, 1, );
Показать полностью
так: Первый - по умолчанию (2), второй - единица (1), в третий - ПУСТОЕ (0) = 3
3. Shaman100M 1191 07.10.08 09:12 Сейчас в теме
Да, есть такое, именно с последним опущенным параметром. Наткнулся на эту фичу в глубокой отладке...
4. Abadonna 3836 07.10.08 09:26 Сейчас в теме
(3)>опущенным параметром
Опущенный параметр - жесть :)))))
motogon; vasilykushnir; +2 Ответить
5. vasilykushnir 07.10.08 09:31 Сейчас в теме
(4) да еще в сочетании с глубокой отладкой... Молодец, Шаман, - поднял (в смысле улучшил :-) ) настроение.
Abadonna; +1 Ответить
13. artbear 1164 07.10.08 16:39 Сейчас в теме
Например, есть функция в глобальнике
Код
Функция глШтатныеПараметрыПоУмолчанию_Сложение(А = 2, Б = 3) Экспорт
   Возврат А + Б;
КонецФункции
Показать полностью

и тест
Код
Процедура Тест_ГлобальнаяФункция_ШтатныеПараметрыПоУмолчанию() Экспорт
   Сам=Сам();

   Значение = глШтатныеПараметрыПоУмолчанию_Сложение(4);
   Сам.ПроверитьРавенство(Значение, 7);

   Значение = глШтатныеПараметрыПоУмолчанию_Сложение(,4);
   Сам.ПроверитьРавенство(Значение, 6);

   Значение = глШтатныеПараметрыПоУмолчанию_Сложение(4,);
   
   Сам.ПропуститьТест(0, "Штатные параметры по умолчанию неверно работают !!"+РазделительСтрок+
      "       Например, глоб. функция глШтатныеПараметрыПоУмолчанию_Сложение(4,) должна вернуть 7, "+РазделительСтрок+
      "       но 1С возвращает 4 :("+РазделительСтрок);
   
   Сам.ПроверитьРавенство(Значение, 7); // БАГ 1С - система возвращает 4
КонецПроцедуры
Показать полностью

22. artbear 1164 07.10.08 17:26 Сейчас в теме
Какие-то у вас примеры некачественные :(
Выкладываю свои юнит-тесты.
Проще всего решать проблему на числах, при сложении, например, пустое значение преобразуется к нулю и видны все баги.
Тесты для 2-х параметров я приводил в (13)
Тесты для 3-х параметров:
.
В глобальнике есть функция
Код
Функция глШтатныеПараметрыПоУмолчанию_Сложение_3Параметра(А = 2, Б = 3, Ц = 5) Экспорт
   Возврат А + Б + Ц;
КонецФункции
Показать полностью

.
Вот юнит-тест
Код
Процедура Тест_ГлобальнаяФункция_ШтатныеПараметрыПоУмолчанию_3Параметра() Экспорт
   Сам=Сам();

   Сам.ПропуститьТест(0, "Штатные параметры по умолчанию неверно работают !!"+РазделительСтрок+
      "       Например, глоб. функция глШтатныеПараметрыПоУмолчанию_Сложение(4,) должна вернуть 7, "+РазделительСтрок+
      "       но 1С возвращает 4 :("+РазделительСтрок);

   Значение = глШтатныеПараметрыПоУмолчанию_Сложение_3Параметра(4);
   Сам.ПроверитьРавенство(Значение, 12);

   Значение = глШтатныеПараметрыПоУмолчанию_Сложение_3Параметра(,4);
   Сам.ПроверитьРавенство(Значение, 11);

   Значение = глШтатныеПараметрыПоУмолчанию_Сложение_3Параметра(4,);
   Сам.ПроверитьРавенство(Значение, 12);

   Значение = глШтатныеПараметрыПоУмолчанию_Сложение_3Параметра(4, 1);
   Сам.ПроверитьРавенство(Значение, 10);

   Значение = глШтатныеПараметрыПоУмолчанию_Сложение_3Параметра(4, 1, );
   Сам.ПроверитьРавенство(Значение, 10);

   Значение = глШтатныеПараметрыПоУмолчанию_Сложение_3Параметра(, 1);
   Сам.ПроверитьРавенство(Значение, 8);

   Значение = глШтатныеПараметрыПоУмолчанию_Сложение_3Параметра(, 1, );
   Сам.ПроверитьРавенство(Значение, 8);
КонецПроцедуры
Показать полностью

.
Проверьте результаты и порадуйтесь/погорюйте за 1С :)
23. artbear 1164 07.10.08 17:30 Сейчас в теме
(22+) Результаты выполнения кода
Код
Значение = глШтатныеПараметрыПоУмолчанию_Сложение_3Параметра(4);
Сообщить("Значение = <"+Значение+">");
   
Значение = глШтатныеПараметрыПоУмолчанию_Сложение_3Параметра(,4);
Сообщить("Значение = <"+Значение+">");
   
Значение = глШтатныеПараметрыПоУмолчанию_Сложение_3Параметра(4,);
Сообщить("Значение = <"+Значение+">");
   
Значение = глШтатныеПараметрыПоУмолчанию_Сложение_3Параметра(4, 1);
Сообщить("Значение = <"+Значение+">");
   
Значение = глШтатныеПараметрыПоУмолчанию_Сложение_3Параметра(4, 1, );
Сообщить("Значение = <"+Значение+">");
   
Значение = глШтатныеПараметрыПоУмолчанию_Сложение_3Параметра(, 1);
Сообщить("Значение = <"+Значение+">");
   
Значение = глШтатныеПараметрыПоУмолчанию_Сложение_3Параметра(, 1, );
Сообщить("Значение = <"+Значение+">");
Показать полностью

равны
Код
Значение = <12> это верно, а дальше фигня
Значение = <11>
Значение = <9>
Значение = <10>
Значение = <5>
Значение = <8>
Значение = <3>
Показать полностью

Разве это верные/ожидаемые результаты ? :)
6. Shaman100M 1191 07.10.08 09:37 Сейчас в теме
)))))) Еще раз перечитал свой пост.... долго думал.... ))) Ну, тогда "фича" и "наткнулся" тож рулят. ))))
7. Altair777 639 07.10.08 14:25 Сейчас в теме
На 7.70.27 (SQL) релизе тоже самое.
Похоже, все-таки, дело в запятой перед параметром
Если запятая есть, то параметр передан.
А т.к. его фактически нет :-), то передается ПустоеЗначение. (сравните 4 и 5)
Но тогда не понятно, почему во втором и третьем запуске написало "2"?

------------------------------
1) ПередачаПараметров1(,)
Пар1="Пустой"
Пар2="Пустой"
Пар3=3
------------------------------
2) ПередачаПараметров1(,,)
Пар1="Пустой"
Пар2=2
Пар3="Пустой"
------------------------------
3) ПередачаПараметров1(1,,)
Пар1=1
Пар2=2
Пар3="Пустой"
------------------------------
4) ПередачаПараметров1(1,2,)
Пар1=1
Пар2=2
Пар3="Пустой"
------------------------------
5) ПередачаПараметров1(1,2)
Пар1=1
Пар2=2
Пар3=3
------------------------------
8. venger 07.10.08 14:42 Сейчас в теме
(7) Даже если передается пустое значение, то в любом случае, если задано значение по умолчанию для формального параметра, формальный параметр должен инициализироваться значением по умолчанию. А этого не происходит, но только в одном случае (что радует), если пропущен фактический параметр после последней запятой при вызове функции, в остальных случаях, все работает, так как должно быть, т.е. если задано значение по умолчанию, то при пропущенно фактическом параметре, формальный параметр инициализируется значением по умолчанию. Т.е. налицо явно баг, хотя если красиво описать, то будет фича:-)))
9. Abadonna 3836 07.10.08 16:03 Сейчас в теме
(8)>Даже если передается пустое значение
Не передается НИКАКОЕ значение, не передается параметр ВООБЩЕ - а это, как говорят в Одессе, две большие разницы. Не баг и не фича, а стандартная вещь
Vitek; JohnyDeath; vasilykushnir; +3 Ответить
18. venger 07.10.08 16:55 Сейчас в теме
(9) Abadonna, а про инициализацию формального параметра значением по умолчанию (которое прописано при определении функции), при отсутсвии фактического, что ты можешь сказать, млин? Где тут норма?

В варианте таком, тоже во второй параметр передается ПУСТОЕ значение:
ПередачаПараметров1(1,,);

Но на выходе получим, т.е. Пар2=2, а не "Пустой":
Пар1=1
Пар2=2
Пар3=\"Пустой\"
10. vasilykushnir 07.10.08 16:16 Сейчас в теме
(8) А ведь стопудово прав. Все больше убеждаюсь, что для того, чтобы называть себя программистом, надо пройти курс молодого бойца на ассемблере... И все больше склоняюсь к мысли: чистый 1с-ник - не программист (в том смысле, что за плечами нет других языков программирования).
11. vasilykushnir 07.10.08 16:20 Сейчас в теме
Сорри, пост (10) относится к (9). И еще. Есть золотое правило: прежде чем кричать о глюках, лучше сначала выключить устройство krivie_ruchki.sys...
38. venger 07.10.08 20:04 Сейчас в теме
(11) Кстати, чтоб убедиться, что я НЕ чистый 1С'ник, как минимум, я вообще НЕ 1С'ник, глянь в мой профайл, найдешь пару примитивных ВК, с исходниками. Т.е. с другими языками, я точно знаком. Я просто, даже программистом назвать себя не могу, а ты вот не стесняешься и программистом себя считаешь, хотя ни одной операционки не создал или СУБД, или на худой случай среды разработки с языком гениальным, покрасивее, чем С++, например...
39. venger 07.10.08 20:05 Сейчас в теме
34. venger 07.10.08 19:40 Сейчас в теме
(10) Я, кстати, не 1С'ник, и за плечами у меня не ассемблер, конечно, но есть много чего, правда многое было давно, в студенческие годы…
Но раз мы такие опытные, приведите еще один язык (среду), с подобным поведением в передаче параметров.
35. venger 07.10.08 19:49 Сейчас в теме
(10) И много таких примеров Вы наберете? А как в Си, Паскале с этим? И сколько сред отрабатывают действительно ожидаемо?
Соотношение будет в лучшем для Вас случае: как в 1С - 5%, как НЕ в 1С - 95%. И что ожидаемей по вашему?
36. venger 07.10.08 19:52 Сейчас в теме
(10) А по-поводу кривых рук, я б сказал, да не буду, деятель великий нашелся...
21. Altair777 639 07.10.08 17:15 Сейчас в теме
Пока реализовывал мысль из (8)
> Т.е. налицо явно баг, хотя если красиво описать, то будет фича:-)))
вы уже много чего написать успели :-D
===================================

Ага :-)
Например....

Код
Функция КолвоЗапятыхВПараметрах(Пар1="это оно!", Пар2="это оно!", Пар3="это оно!") Экспорт      
   Если ПустоеЗначение(Пар3)=1 Тогда   
      Возврат 2;
   ИначеЕсли ПустоеЗначение(Пар2)=1 Тогда   
      Возврат 1;
   ИначеЕсли Пар3<>"это оно!" Тогда   
      Возврат 2;
   ИначеЕсли Пар2<>"это оно!" Тогда   
      Возврат 1;
   Иначе   
      Возврат 0;
   КонецЕсли;   
КонецФункции      
//--------------------------      
Процедура Сформировать()      
   Сообщить(КолвоЗапятыхВПараметрах());   
   Сообщить(КолвоЗапятыхВПараметрах(1));
   Сообщить(КолвоЗапятыхВПараметрах(1,));
   Сообщить(КолвоЗапятыхВПараметрах(1,2));
   Сообщить(КолвоЗапятыхВПараметрах(1,2,));
   Сообщить(КолвоЗапятыхВПараметрах(,,3));
КонецПроцедуры   
Показать полностью


Результаты
0
0
1
1
2
2

-------------------------
Кажется, работает правильно :-)
51. Abadonna 3836 08.10.08 03:59 Сейчас в теме
Все непонятки у вас, мужики, из-за того, что вы хотите быть святее папы римского
Есть определенные правила, как передать ПУСТОЙ параметр.
Код
Функция Сумма (А=2,Б=3)
   Возврат А+Б;
КонецФункции

Процедура Сформировать()
   Сообщить(Сумма()); // оба пустых
   Сообщить(Сумма(,5)); // первый пустой
   Сообщить(Сумма(8));  // второй пустой
КонецПроцедуры
Показать полностью

Возвращает как и положено 5, 7, 11
И только так!!! И никаких извратов типа Сумма(,) и Сумма(8,)
52. Abadonna 3836 08.10.08 05:01 Сейчас в теме
+(51) А вот единственно правильный способ вызова в тремя параметрами
Код
Функция Сумма(А=1,Б=2,В=3)
   Возврат А+Б+В;
КонецФункции

Процедура Сформировать()
   Сообщить(Сумма());  //  все пустые:никаких запятых!
   Сообщить(Сумма(5)); //пустые 2 и 3: никаких запятых после 5!
   Сообщить(Сумма(5,5));  // пустой 3: не надо запятую после 5!
   Сообщить(Сумма(,,5));   // пустые 1 и 2
   Сообщить(Сумма(,5));   // пустые 1 и 3: не надо запятую после 5!
КонецПроцедуры

Показать полностью
alf2005q; +1 Ответить
61. Altair777 639 08.10.08 11:36 Сейчас в теме
(51) А кто в данном случае Папа Римский? :-)
Налицо с недокументированный :-) баг 1С. Вчитайтесь!
«Если параметру задано значение по умолчанию и он является последним в списке, то при вызове процедуры его можно опускать в списке передаваемых фактических параметров и не ставить запятую перед опущенным параметром.»
На самом деле, опускать можно ЛЮБОЙ параметр... Главное, с запятыми не запутатся.

(52) >А вот единственно правильный способ вызова в тремя параметрами
Вы уверены, что перечислили ВСЕ?

Код
А то я тут еще 2 нашел
   Сообщить(Сумма(,10,20));   // пустой 1!
   Сообщить(Сумма(5,,20));   // пустой 2!
Показать полностью
62. Abadonna 3836 08.10.08 11:44 Сейчас в теме
(61) Баг не недокументированный, просто плохо документированный.
Надо было написать так: "..и он является последним в списке, то при вызове процедуры его можно опускать в списке передаваемых фактических параметров. При этом запятую перед ним СТАВИТЬ не надо"
P.S. Вот у меня почему-то никогда не возникало сомнений, как её правильно вызвать, наверное потому, что никогда документацию
по таким вопросам не читаю :))))))))
63. Abadonna 3836 08.10.08 11:57 Сейчас в теме
(61)>А кто в данном случае Папа Римский? :-))
Папа Римский - Бенедикт XVII, кажись ;))))
67. Abadonna 3836 08.10.08 15:33 Сейчас в теме
(66) Не, вот он http://www.wareznik.net/world/id_53261/
У Нуралиева скорее всего конфессия другая;)
68. Altair777 639 08.10.08 16:38 Сейчас в теме
(67) Сейчас отвикипедил :-) слово "конфессия"

Конфе́ссия (лат. confessio — исповедание) — особенность вероисповедания в пределах определённого религиозного учения, а также объединение верующих, придерживающихся этого вероисповедания.

Второе значение - это прямо про нас.
Немножко перефразировав Митяева - "а для чего все мы здесь сегодня собрались"
Так что... своего рода Нуралиев для нас - Папа Римский... :-)
Abadonna; +1 Ответить
69. Abadonna 3836 08.10.08 16:40 Сейчас в теме
(68)отвикипедил - плюсссссс!
70. Altair777 639 08.10.08 16:46 Сейчас в теме
(69) Спасибо за плюсик :-)
Самому до сих пор смешно, хотя уже годик-два употребляю этот глагол.
Ничего военного в этом нет. Простая компиляция по принципу "Гугл - отгуглил".
71. vasilykushnir 09.10.08 09:01 Сейчас в теме
(68) -(70) Ну вы прям словарь сленга создаете;
гугл = гугнул, отгуглил, гугланул, загуглячил...
... все = загуглили все
Полный ... = полный яндекс
72. Abadonna 3836 09.10.08 09:02 Сейчас в теме
(71) Забыл еще одно: полный гуглец :)))
73. vasilykushnir 09.10.08 09:03 Сейчас в теме
+ к (71)
- ты не занят.
- Занят! Но я отвечу на все твои вопроссы. И вообще последнее время, блин!, рядом с тобой я чувствую себя полным гуглом...
12. artbear 1164 07.10.08 16:36 Сейчас в теме
Для справки - подобные баги при работе с параметрами по умолчанию были обнаружены еще пару лет назад при работе над ВК 1С++ :)
У меня даже тесты соответствующие с тех пор остались.
.
ЗЫ это мы разбирались, как правильно передавать параметры по умолчанию в классы 1С++.
15. vasilykushnir 07.10.08 16:40 Сейчас в теме
(12) Нет худа без добра - подумал зять, кидая камнем в собаку и попадая в тещу... :-)
14. artbear 1164 07.10.08 16:40 Сейчас в теме
(12+) Даже где-то на форуме 1cpp.ru есть соответствующая ветка.
16. artbear 1164 07.10.08 16:41 Сейчас в теме
А для 3 и более параметров, как у автора, вообще полные чудеса творятся :)
17. artbear 1164 07.10.08 16:46 Сейчас в теме
(12+) Соответственно, работа с методами по умолчанию в классах 1С++ лишена этого недочета 1С - в 1С++ все просто и прозрачно, как в других языках :) Но только в том случае, если обращаться к объекту класса через контекст - типа ОБъект.Метод()
В ином случае, если, например, внутри класса вызвать просто Метод(), 1С "сильнее" и работает именно ее синтаксис и ее баги :)
19. Abadonna 3836 07.10.08 17:05 Сейчас в теме
>фактического, что ты можешь сказать, млин?
А вот, млин, и говорю: первый та передал как 1, второй (раз он между запятыми) - ПустоеЗначение (вот и присвоилось значение =2), третий ты ваще не передал (т.е. не передавал ты туда пустое значение на основании которого он должен был стать=3)
20. artbear 1164 07.10.08 17:12 Сейчас в теме
(19) Ты не прав - явный же изврат получился :)
24. artbear 1164 07.10.08 17:39 Сейчас в теме
Кстати, не обратил внимания сначала - автор написал абсолютно верно
Т.е. получается, что при передаче фактических параметров при вызове процедуры, если после последней запятой фактический параметр опущен, то соответствующему формальному параметру в любом случае будет присвоено пустое значение, а не значение по умолчанию, которое ему задано
.
Т.е. разработчик 1С не проверил граничное последнее значение и сделал ошибку, а отсутствие соответствующих юнит-тестов не позволило найти эту ошибку, в результате чего ошибка так и живет до сих пор :(
.
Именно эти факты и доказывают наши тесты и примеры :(
26. JohnyDeath 295 07.10.08 17:45 Сейчас в теме
(24) ну вот, сам же жирным и ответил на все вопросы. Т.е. никакого бага. Всё ожидаемо, КМК.
27. Altair777 639 07.10.08 17:50 Сейчас в теме
(26) > Т.е. никакого бага.
Баг есть... у фирмы 1С
31. artbear 1164 07.10.08 18:03 Сейчас в теме
(26) Жень, ну сам посуди, где же ожидаемое поведение -
Значение = глШтатныеПараметрыПоУмолчанию_Сложение_3Параметра(4,);
9 разве ожидаемо? Т.е. второй пустой, а 3 параметр берется по умолчанию ??
Изврат полный :)
28. JohnyDeath 295 07.10.08 17:53 Сейчас в теме
29. venger 07.10.08 17:55 Сейчас в теме
Им (JohnyDeath, Abadonna) просто 1С деньги пошляет, вот они и на защиту встали:-)))
30. Altair777 639 07.10.08 17:58 Сейчас в теме
32. artbear 1164 07.10.08 18:09 Сейчас в теме
Кстати, могу в ВК 1С++ или в ФормЕкс исправить данное корявое поведение 1С :)
Т.е. вместо пустых значений при использовании запятой будут выдаваться значения по умолчанию.
.
Но представляете, сколько давно работающего кода может оказаться неверным :)
motogon; Crush; +2 Ответить
33. Altair777 639 07.10.08 18:50 Сейчас в теме
(32) Будут баги при использовании исправленного бага? :-)
37. venger 07.10.08 19:53 Сейчас в теме
Сорри, пост 36 относится к 11-му посту:-)))
40. Душелов 3902 07.10.08 20:30 Сейчас в теме
41. venger 07.10.08 20:38 Сейчас в теме
Пошел, покушал, стал добрее. Кушайте люди, помогает от злости:-))
Я итак на работе не могу заниматься программированием, а когда видишь (я счас не про сайт и не про тех, кто с сайта), что есть куча людей, в том числе и 1С'ников, особенно у франчей. Сидят целыми днями и могут заниматься программированием, а толку, только место занимают. А ты, через силу, после работы или по выходным, усталый и с кучей других проблем, нормально, а даже и получше, тратя гораздо меньше времени и вопреки обстоятельствам успеваешь и изучить, и делать получше, чем они. И с кучей отвлекающих обстоятельств. И ты после этого, так себе, а они супер-пупер прогеры, а зачастую только усидчивостью и берут. ОбЫдно, елы-палы...
42. Душелов 3902 07.10.08 20:46 Сейчас в теме
(41) Учись, студент. И работать, и программить :) И жениться тоже :)
43. venger 07.10.08 20:54 Сейчас в теме
(42) Прорвемся, где наша не пропадала:-)
Я правда только в душе студент, а так давно уже нет, закончил, но это дела не меняет:-))
Меня просто жизнь все время как то мешала увязнуть в программировании. Первый раз - это было классе в пятом, подарили мне советский еще комп БК, подключался к телеку, винт - магнитофон с кассетами. Так у меня магнитофона не было, приходилось набирать каждый раз все по новой:-)) И вот, я уже дошел до того, чтобы писать игрухи простенькие, чужих то не было, ни кассет, ни магнитофона. И я, математику то, толком еще не начали нам еще читать, приставал к взрослым, как мне посчитать отскок мяча от стенки:-))) В общем, перегорел он, компьютер. На полгода или год, не было возможности. Потом опять начал, появился комп, потом опять что-то случилось. И вот так все время. Не хочет судьба, чтобы я с компами долго общался:-)))
44. Душелов 3902 07.10.08 20:56 Сейчас в теме
(43) Ну если по воспоминаниям... Я свою первую прогу написал в 11 лет, на спектруме, на бейсике... И понеслась :)
45. venger 07.10.08 21:02 Сейчас в теме
Я тоже на бейсике:-))) Правда потом понеслось в другую сторону, спорт, горы, скалолазанье, горными лыжами, потом легкая атлетика, баскетбол, потом старшие классы, это уже не совсем спорт, но впечатления новые, из серии вспомнить есть что, а детям рассказать нечего:-) И все время пытался вернуться к программированию, и все время через какое-то время, что-то выбивало:-)))
46. JohnyDeath 295 07.10.08 21:32 Сейчас в теме
По теме: поведение 1С может быть и не совсем грамотное, но вполне предсказуемо. и даже документировано.
47. venger 07.10.08 21:38 Сейчас в теме
(46) Насчет предсказуемо - это да, в смысле, первый раз не ожидаешь, все следующие разы знаешь, что будет. А документировано где? Ветки на форумах - их еще найти надо...
48. venger 07.10.08 21:55 Сейчас в теме
Необязательная установка значения параметра по умолчанию. Параметры с установленными значе­ниями по умолчанию можно располагать в любом месте списка формальных параметров.

Если параметр при вызове процедуры опущен, то он принимает либо установленное по умолчанию значение (если оно есть) либо принимает «пустое» значение (значение неопределенного типа).

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

Если параметру задано значение по умолчанию и он является последним в списке, то при вызове процедуры его можно опускать в списке передавае­мых фактических параметров и не ставить запятую перед опущенным параметром.

Если параметру не задано значения по умолча­нию, то при вызове процедуры его можно опускать в списке передаваемых фактических параметров, но разделительную запятую надо ставить.
49. venger 07.10.08 22:03 Сейчас в теме
Я просто решил перелистать описание языка, чтоб систематизировать и закрепить знания, и начал с первой главы...
И когда читал 3-й, 4-й и 5-й абзацы, то понял, что с последним параметром и последней запятой, что-то непонятно мне. И решил проверить, что там когда происходит. Проверил, подофигел и расписал ситуацию, чтоб и самому до конца систематизировать ситуацию и разобраться в ней, а заодно думаю, че добру пропадать, выложу, заодно посмотрю, что другие скажут, может материала для размышлений еще подкинут. Т.е. я эту ситуацию чисто из описания прочувствовал, что как то непонятно. Т.е. без всяких отладчиков, без всяких встречаний в реальной деятельности или написании ВК. Т.е. в этом смысле, что думающий человек полезет уточнять и докопается, то да документировано:-)
50. CheBurator 08.10.08 02:20 Сейчас в теме
БК, спектрумы и прочее.. - счастливцы.. у вас хоть это было.. а в мое время - не было! и "если бы я не был мальчиком, то у меня даже не было бы в дестве игрушки"...
единственное, что оттачивает мозг - это ассемблер... все остальное - это хорошо, гуд, итд. но однозначного поведения и ясности - только в ассемблере есть...
53. artbear 1164 08.10.08 07:22 Сейчас в теме
(51,52) В других языках написание запятой без следующего параметра будет считаться ошибкой :(
А у 1С все не как у людей :) Поэтому очень даже запросто можно сделать подобную незаметную ошибку и поведение кода изменится :(
Т.е. в данном случае 1С очень недружелюбно относится к синтаксису :(
.
С моей точки зрения Сумма(,5) и Сумма(5,) не должны отличаться! В обоих случаях должны передаваться значения по умолчанию, если есть.
.
А вообще Сумма(,5) также изврат - как-то более надежно, что параметры по умолчанию могут быть только в конце списка параметров.
54. Abadonna 3836 08.10.08 07:47 Сейчас в теме
(53) Проверю ради интереса на Дельфе. Чё-то как-то не озадачивался до этого...
57. Abadonna 3836 08.10.08 09:43 Сейчас в теме
(53)+(54)>В других языках написание запятой без следующего параметра будет считаться ошибкой
function Summa(A:integer=1;B:integer=2):integer;
begin
Result:=A+B;
end;
Дельфи при компиляции одинаково ругается и на Summa(5,), и на Summa(,5)
58. vasilykushnir 08.10.08 11:22 Сейчас в теме
(57) И правильно ругнется - ибо неча... Всегда надо четко осознавать, что передаешь в функцию - следовательно вправе ожидать адекватной реакции функции. Передашь ерунду - ерунду на выходе и получишь.
55. vasilykushnir 08.10.08 09:07 Сейчас в теме
Вагнер, мне даже спорить с тобой лень - не игривое настроение что-то сегодня. А по сути вопросса... Хотя нет - сначала загадка:

Мальчику дали три яблока. Он два съел. Сколько яблок осталось у мальчика?

НЕ программист ответит - одно. И будет не прав. Задача не имеет решения - мы не знаем, сколько яблок было у мальчика до того.
Отсюда вывод: ВСЕГДА НАДО ИНИЦИАЛИЗИРОВАТЬ ПЕРЕМЕННЫЕ ДО ИХ ИСПОЛЬЗОВАНИЯ. Тогда не будет возникать никаких глюков и подобных тем.
56. vasilykushnir 08.10.08 09:08 Сейчас в теме
+ к (55) Вагнер = Вангер (опечатка - честное слово не нарочно).
59. Crush 08.10.08 11:23 Сейчас в теме
Всем большое спасибо за указание на ошибку.. В последующих текстах буду учитывать подобное поведение.. Но чувствую что голова еще долго будет болеть за ранее написанные программы =))
60. vasilykushnir 08.10.08 11:35 Сейчас в теме
А плюсик пожалуй автору поставлю (хоть он и обидчивый сверх меры - ничего личного, тем более в его конкретно адрес, не имел в виду) - за любознательность и старательность. Самому бы в лом было возится со столькими вариантами передачи параметров.
Тема еще раз подтвердила верность выбранной мной технологии - всегда четко представлять с чем работаешь, что передаешь и что ожидаешь получить.
Кстати, значениями по умолчанию в списках формальных параметров стараюсь пользоватся при крайней необходимости - комфортнее себя чувствую, проведя анализ в теле функции на пустое значение параметра и потом уже присвоение значения по умолчанию.
64. alexqc 08.10.08 12:23 Сейчас в теме
Вообще, мало есть языков, в которых допустима конструкция с пустыми запятыми. Например в с++ нельзя, в делфи/паскале тоже (но тут уже сказали), в яве. Вроде можно в VBA/VBS, но там и именованные параметры задавать можно.

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

И даже наши предположения про "граничное последнее значение" без кода - только предположения (ведь параметры и до, и после последнего обрабатываются одинаково, т.е. именно последний параметр обрабатывается особым образом, т.е. для него сделан отдельный блок?).
Я например не представляю какой должен быть код, чтобы последний параметр "случайно" стал таким особым.
Разве что так - изначально массив параметров инициализируются пустыми значениями;
потом идем по списку, и ставим либо параметр вызова, либо параметр по-умолчанию если оного нет. И только потом - заполняем по-умолчанию то что осталось "за скобками". При этом каким-то образом в этой обработке умудрились опустить последний пустой параметр (а ведь он точно обрабатывается, иначе бы и заданные последние параметры опускались)? Тогда опять приходим к тому что для последнего параметра отдельный блок, вне цикла?

Вот если б первый параметр из параметров "за скобками" пропустили - тогда понятно было бы (не с того второй цикл начали), но это бы выловилось быстро.

И к тому же, схема все-таки странная: я бы сначала инициализировал параметры константным "вектором по-умолчанию" (тем более что 1С в качестве параметров по-умолчанию разрешает только константы, т.е. этот вектор можно просчитать единожды на этапе компиляции), а потом бы просто ставил имеющиеся параметры вызова.

Вобщем что-то с этим последним параметром мутно. Было бы интересно взглянуть на исходник, но к сожалению сие [почти] неосуществимо.
65. artbear 1164 08.10.08 14:17 Сейчас в теме
Народ, дело ведь не только в параметрах по умолчанию, а в том, что 1С зачем-то разрешила не задавать параметры явно, а дала возможность пропускать их, просто не указываю :(
.
Например, есть
Функция глШтатныеПараметрыПоУмолчанию_Сложение(А, Б)
ее же можно и так
глШтатныеПараметрыПоУмолчанию_Сложение(,) :(
.
В итоге и может появиться код, который ведет себя странным образом, причем 1С об этом ну никак не сообщит. Например, простая опечатка в запятой :(
.
Другие языки все-таки более качественно отнеслись к этому вопросу и не допускают таких непоняток.
74. Vitek 09.10.08 09:05 Сейчас в теме
Имхо "отвикипедил" ближе к созданию статьи в википедии.
Погуглил, повикипедил, полуркал...
но это уже полный офф :)
75. Altair777 639 09.10.08 09:37 Сейчас в теме
(74) имхо, Вы не правы... А что тогда "отгуглил"?
Хакнул робота Гугла и продвинул свой сайт в топы? :-)
76. Abadonna 3836 09.10.08 09:40 Сейчас в теме
И последний вариант: википедик :))))
77. vip 09.10.08 09:48 Сейчас в теме
79. Abadonna 3836 09.10.08 09:55 Сейчас в теме
(77) Сорри за OFF. Ероха, ты чё в асе скрываешься?
78. Altair777 639 09.10.08 09:50 Сейчас в теме
(76) этот тот, кого википедают? :-)
80. sash-ml 09.10.08 15:45 Сейчас в теме
а шо если запятую убрать а?
81. Altair777 639 09.10.08 16:08 Сейчас в теме
83. pvase 337 09.10.08 20:13 Сейчас в теме
Автор не прав, он передает 2 параметра, так как стоит запятая (,). Соответсвенно считается что параметр 1 и параметр 2 пустые.
84. venger 09.10.08 21:55 Сейчас в теме
(83) Значения по умолчанию формальных параметров учли? :-))
85. venger 09.10.08 21:58 Сейчас в теме
(83) Комментарии к статье читали? Там есть еще много различных примеров в дополнение к сказанному в статье. В статье минимум, чтоб понять смысл...
86. venger 09.10.08 21:58 Сейчас в теме
(83) В общем, поверьте на слово, автор прав:-))
87. venger 09.10.08 22:00 Сейчас в теме
(83) Основные расхождения в интерпретации, как всегда, - это баг или не очень:-))
Но с этим, конечно, можно жить и вполне радостно, только надо об этом знать и учитывать:-))
motogon; vasilykushnir; +2 1 Ответить
89. vasilykushnir 10.10.08 16:37 Сейчас в теме
(87)"Основные расхождения в интерпретации, как всегда, - это баг или не очень:-))"

Наполовину беременна, наполовину нет... :-)
motogon; venger; +2 Ответить
90. venger 10.10.08 17:01 Сейчас в теме
(89) VasilyKushnir, вообще я не злой:-))
Кстати, мой ник - это по фамилии на русском - Венгер, на первом слоге ударение, если произносить:-))
Хотя Вагнер или Бетховен или Бах, тоже приятно, быть композитором в программировании - это исскуство:-))
91. venger 10.10.08 17:02 Сейчас в теме
+(90) Но я не так крут еще:-))
92. CheBurator 10.10.08 17:36 Сейчас в теме
(90) угумс.. был у нас замполит - зАсов и чел с фамилией кОзлов... но больше всего не повезет жене человека с фамилией Вагин....
93. JohnyDeath 295 10.10.08 18:14 Сейчас в теме
(92) а со мной училась такая ;)
88. Altair777 639 09.10.08 22:19 Сейчас в теме
Спмое забавное, что вариант (,) проходит...
Хотя первому параметру не присвоено значение по умолчанию.
Сравните с тем, что вариант () на этапе синтаксиса уже не проходит.
Вот еще 1 баг :-)
94. CheBurator 10.10.08 18:51 Сейчас в теме
А фамилия чела Воробьев - лучше ее в обществе женщин задом наперед вслух не читать...
95. venger 11.10.08 01:48 Сейчас в теме
Головач Лена, так что обломитесь все:-)
96. alevnev 11.10.08 15:58 Сейчас в теме
1) В случае вызова (,) опущен 1-й фактический параметр, не имеющий значения по-умолчанию. А по документации: "Если параметру задано значение по умолчанию и он является последним в списке..."

2) Функция ПустоеЗначение() очень часто ведет себя непредсказуемо даже в 27-ом релизе, в частности, с агрегатными типами данных (справочник, документ).

97. nickVZ 10 14.10.08 10:34 Сейчас в теме
А может стоит бросить привычку ожидать, что реализовано что-то по вашему мнению? А? И в сомнительных случаях просто ставить проверку?
vasilykushnir; +1 Ответить
98. vasilykushnir 14.10.08 10:56 Сейчас в теме
101. vasilykushnir 14.10.08 12:33 Сейчас в теме
(97) Быстрее нет, чем да. Просто, как сказано в (97), стараюсь максимально ставить проверки - от греха подальше. Хотя с моими юзверями не всегда спасает... Именно в этой части согласен с (97).
102. venger 14.10.08 13:09 Сейчас в теме
(101) Я вот чего понять не могу, чем эта позиция (ведь у меня такая же) мешает признать, что в 1С немного подошиблись и перекрутили в реализации приема/передачи параметров?
Оставьте свое сообщение

См. также

Очный семинар по регулярному менеджменту Александра Фридмана "Вы или Хаос", 12 декабря 2019 г. , Санкт-Петербург Промо

Семинар по регулярному менеджменту от Александра Фридмана для собственников, первых лиц и топов. Технология управленческого планирования, комплексного управления временем и другими ресурсами, выполнением поручений, делами, информацией, контактами (встречи-звонки-почта).

от 11000 до 29000 рублей

Подготовка сведений для ПФР ЗиК 339. СЗВ-6-4 две незначительные ошибки. 3

Статья Системный администратор Программист Бухгалтер Нет файла v77::Расчет 1С7:ЗиК Россия БУ Зарплата ФОМС, ПФ, ФСС Бесплатно (free) Практика программирования

Подготовка сведений для ПФР ЗиК 339. СЗВ-6-4 две незначительные ошибки: 1.При переносе сотрудника из одной пачки в другую у него теряются сведения о выплатах. 2.Неактивна кнопка сортировки сотрудников.

11.10.2013    11014    Cvetic    7       

Подборка решений для взаимодействия со ФГИС «Меркурий» Промо

С 1 июля 2019 года все компании, участвующие в обороте товаров животного происхождения, должны перейти на электронную ветеринарную сертификацию (ЭВС) через ФГИС «Меркурий». Инфостарт предлагает подборку программ, связанных с этим изменением.

Cashback 35% при покупке 1С лицензий на счет INFOSTART.RU с 27.11 по 04.12 Промо

Оформляете заказ на 1С лицензии или конфигурации. Получаете 35% от стоимости на счет в профиле INFOSTART.RU. Выбираете сервисы и продукты на сумму кэшбэка.

Скрытие помеченных на удаление в справочнике 5

Статья Программист Нет файла v77::ОУ v77::БУ v77::Расчет 1cv7.md Россия Бесплатно (free) Практика программирования

Корректно скрываем помеченных на удаление в справочнике, с иерархией и без. Вроде простая и нужная вещь, но почему-то нигде не встречалась

08.08.2012    11630    mikukrnet    7       

Исправление и проведение документов 5

Статья Программист Нет файла v77::БУ 1С7:ПУБ Россия Бесплатно (free) Практика программирования

Исправление и проведение документов, например, счетов-фактур, введенных на основании документов реализации, можно организовать многими способами. Описан сравнительно простой подход, реализованный и работающий несколько лет в реальной бухгалтерии 1Cv7.7. Без внешних компонентов.

23.07.2012    11796    BorisBelov    11       

Подборка программ для взаимодействия с ЕГАИС Промо

ЕГАИС (Единая государственная автоматизированная информационная система) - автоматизированная система, предназначенная для государственного контроля за объёмом производства и оборота этилового спирта, алкогольной и спиртосодержащей продукции. Инфостарт рекомендует подборку проверенных решений для взаимодействия с системой.

Мини-класс для непосредственного ввода в элементах диалога V7.7 51

Инструменты и обработки Программист Внешняя обработка (ert,epf) v77::ОУ v77::БУ v77::Расчет 1cv7.md Россия Бесплатно (free) Работа с интерфейсом

Класс основан на баге платформы 7.7, является продолжением публикации http://infostart.ru/public/140861/ позволяет искать по наименованию в реквизитах типа справочник "а-ля снеговик".

26.06.2012    18710    139    Ёпрст    87       

Перенос данных КА 1.1 / УПП 1.3 => БП 3.0 (перенос остатков, документов и справочников из "1С:Комплексная автоматизация 1.1" / УПП 1.3 в "1С:Бухгалтерия 3.0"). Обновлен до версий КА 1.1.115.х, УПП 1.3.127.х! Промо

Разработка позволяет перенести остатки по всем счетам бух.учета в программу "1С:Бухгалтерия предприятия 8", ред. 3.0 на выбранную дату начала ведения учета. Также переносятся документы за период и вся необходимая справочная информация. Правила оперативно обновляю при выходе новых релизов. Рассылка обновлений правил бесплатно в течение 12 месяцев. Есть видеодемонстрация проведения переноса данных. Конфигурации при использовании обмена остаются полностью типовыми. Перенос данных возможен в Бухгалтерию 3.0 версии ПРОФ, КОРП или базовую.

24700 руб.

Продажа собственной фирме (интеркомпани) - заполнение отрицательными остатками 9

Статья Программист Нет файла v77::ОУ 1С7:Комплекс 1С7:ТиС Россия Учет ТМЦ Бесплатно (free) Практика программирования

В документе "Продажа собственной фирме" приходится добавлять номенклатуру вручную через подбор. А ведь можно сэкономить время и заполнить спецификацию документа на основании отрицательных остатков фирмы. Все просто...

06.05.2012    11487    2sw    4       

Ввод остатков по 76.ВА в 1С ПУБ 2

Статья Программист Нет файла v77::ОУ v77::БУ 1С7:ПУБ Россия БУ Бесплатно (free) Практика программирования

Статья посвящена найденному мной недостатку в конфигурации 1С 7.7 "Производство-услуги-бухгалтерия", связанному с вводом начальных остатков по 76.ВА.

29.04.2012    8281    Пользователь 1С    0       

Новый раздел на Инфостарте - Electronic Software Distribution Промо

Инфостарт напоминает: на нашем сайте можно купить не только ПО, связанное с 1С. В нашем арсенале – ESD-лицензии на ПО от ведущих вендоров: Microsoft, Kaspersky, ESET, Dr.Web, Аскон и другие.

  • Низкие цены, без скрытых платежей и наценок
  • Оперативная отгрузка
  • Возможность оплаты с личного счета (кешбек, обмен стартмани на рубли и т.п.)
  • Покупки идут в накопления для получения скидочных карт лояльности Silver (5%) и Gold (10%)

Ошибка при формировании отчета Авансы по налогу на имущество. В 1С:Предприятие 7.7. Регламентированная отчетность за I квартал 2012 года Обновление 12q1009 от 18.04.2012 г. 18

Статья Программист Нет файла v77::ОУ v77::БУ 1cv7.md Россия Бесплатно (free) Практика программирования

При формировании отчета NIMAVP1.ERT Авансы по налогу на имущество (версия 5.03) в разделе № 1-3 не сохраняет номера Страниц при выборе, что ведет к не сохранению и выводу печати двухмерного кода.

24.04.2012    7587    leo072    7       

Ошибка при формировании отчета 4-ФСС для УСН 7,7 12q1007 6

Статья Программист Нет файла v77::БУ 1С7:Бух Россия НУ Бесплатно (free) Практика программирования

При формировании таблицы 6,7 раздела 2 возникает ошибка ИтАн.ИспользоватьСубконто(ВидыСубконто.ВидыПлатежейВФонды, Перечисление.ВидыПлатежей.Штраф); {C:\PROGRAM FILES\1CV77\SSTDEMO\EXTFORMS\RP12Q1.GRP\FSS4_1212.ERT(2330)}: Поле агрегатного объекта не обнаружено (ВидыПлатежейВФонды)

11.04.2012    9519    *Zed*    1       

Онлайн-интенсив "Бизнес-процессы для подготовки к экзамену 1С:Специалист по платформе" 12 декабря 2019 г. Промо

На интенсиве будут рассмотрены все теоретические вопросы, связанные с устройством механизма бизнес-процессов – это необходимо для успешной сдачи экзамена 1С:Специалист по платформе. Также, в качестве практического примера, будет решена задача, аналогичная экзаменационной.

777 рублей

Быстрый отбор в журнале на конкретную дату 7

Статья Программист Нет файла v77::ОУ 1cv7.md Россия Бесплатно (free) Практика программирования

Лень - двигатель прогресса. Полезная фича для быстрого отбора документов в любом журнале на конкретную дату.

27.02.2012    9470    avers007    16       

ЗиК 321, в отчетах пропадает проводка по ПФР_страховая 25

Статья Программист Нет файла v77::ОУ v77::Расчет 1С7:ЗиК Россия ФОМС, ПФ, ФСС Бесплатно (free) Практика программирования

При формировании отчета "Свод проводок" с галкой "Учет начисления налогов с ФОТ, включаемых в состав расходов" в отчет не выходит ПФР_страх

10.02.2012    5060    filh    19       

1С:Предприятие через Интернет. 1С:Fresh Промо

Ведение бухгалтерского и налогового учет, сдача отчетности, управление бизнесом из любой точки мира. Привычные программы «1С» через Интернет без приобретения коробочных программ.

Перенос данных БП 3.0 => УТ 11 / КА 2 / ERP 2 (ЕРП) (перенос остатков, документов и справочной информации из "1С:Бухгалтерия предприятия 8", ред.3.0). Обновлено до БП 3.0.73.х, УТ 11.4.10.х, КА 2.4.10.х., ERP 2.4.10.х! Промо

Переносятся документы за выбранный период, справочная информация и остатки по счетам бух. учета в программу УТ 11 / КА 2 / ЕРП 2 (ERP). Переносятся все возможные виды операций ввода остатков на нужную дату. Есть отбор по периоду переноса документов и фильтр по организации, доступен выбор даты ввода остатков. Если нужно переносить что-то дополнительно, то обычно бесплатно добавляем это в перенос . Смотрите видеодемонстрацию со звуком - советами по переносу и рекомендациями настройки программ.

29700 руб.

Ошибка в 1С:Бух77 ред.533 Начисление ФФОМС при ЕНВД 11

Статья Программист Нет файла v77::БУ 1С7:Бух Россия Зарплата Бесплатно (free) Практика программирования

При начислении налогов с ФОТ (док.ЗакрытиеМесяца) не расчитываются налоги ФФОМС, если начисление зарплаты проводится как "облагаемые ЕНВД".

22.01.2012    8287    lelbraun    3       

Медленное формирование отчета в ФСС. Ошибка в алгоритме файл: ESN_GET.ERT 6

Статья Системный администратор Программист Нет файла v77::БУ 1С7:Бух Россия Бесплатно (free) Практика программирования

Достаточно старая ошибка 1С (исправляю уже пару лет) в файле ESN_GET.ERT (1С7.7 бухгалтерский учет). Проявляется в том, что очень медленно формируются регламентные отчеты в фонды ФСС и ПФР, если в типовой бухгалтерии ведётся начисление зарплаты сотрудникам и количество сотрудников превышает определённое количество (в моём примере 90, но замедление скорости видно и на 20)

11.01.2012    5703    Digo65    2       

Готовые переносы данных из различных конфигураций 1C Промо

Рекомендуем готовые решения для переноса данных из различных конфигураций 1C. C техподдержкой от разработчиков и гарантией от Инфостарт.

Ошибка в обработке "ПодборЗатратПоУслугам" в типовой Бухгалтерии для бюджетных учреждений 6.2 (647) 2

Статья Программист Нет файла v77::БУ 1С7:ББУ Государственные, бюджетные структуры Россия Бесплатно (free) Практика программирования

В текущем на момент публикации релизе 647 конфигурации "Бухгалтерия для бюджетных учреждений 6.2" при заполнении документа "Списание затрат по услугам" наблюдается следующая ошибка: в режиме заполнения (F5) невозможно выбрать значение субконто, если тип субконто - подчиненный справочник.

30.12.2011    8681    demon_infernal    1       

Начисление ФСС (страховых взносов) на договора гражданско-правового характера 6

Статья Программист Бизнес-аналитик Нет файла v77::Расчет 1С7:ЗиК Россия БУ ФОМС, ПФ, ФСС Бесплатно (free) Практика программирования

В программе Зарплата и кадры 7.7 релиз 314, НЕ начисляются страховые взносы на "договора гражданско-правового характера". Для Начисления (страховые взносы) ФСС на договора гражданско-правового характера: в ЗиК 314 требуется изменить конфигурацию.

18.11.2011    9607    Diamante    7       

Вакансия Автор новостных обзоров на тему 1С и бухучета, По совместительству Промо

Редакция Infostart.ru будет рада сотрудничеству с 1С-специалистом, умеющим и любящим излагать свои мысли в письменной форме. Если вы работали в IT-изданиях или имеете опыт ведения технологического блога/канала/группы, если сможете сделать обзор обработок из каталога infostart.ru/public/all/, то у вас большое преимущество.

Прямые запросы: ускорение получения цен для типовой ТиС 7.7 22

Статья Программист Нет файла v77::ОУ 1С7:Комплекс 1С7:ТиС Россия Бесплатно (free) Практика программирования Разработка внешних компонент

Первая статья из цикла статей "Прямые запросы:...". Рассказывается о применении класса ПрямойЗапрос и компоненты 1С++ для ускорения функции глВернутьЦену() в типовой конфигурации Торговля и склад. Платформа 7.7.

15.11.2011    13526    leshik    21       

1С:Торговля и Склад - ошибка во всех релизах, При использовании нескольких фирм и префиксов номеров документов. 14

Статья Программист Нет файла v77::ОУ 1С7:ТиС Россия Бесплатно (free) Практика программирования

Собственно сегодня обнаружил ошибку, которая присутствует во всех релизах конфигурации Торговля и Склад 7.7 вплоть до текущего 7.70.969, при использовании нескольких фирм и префиксов документов для некоторых из них.

04.11.2011    13715    twilight5023    8       

Перенос данных УПП 1.3 => ERP 2 (ЕРП) / УТ 11 / КА 2.х (обработка переноса документов, остатков и справочников из "1С:Управление производственным предприятием, ред. 1.3" в ERP / УТ 11 / КА 2). Обновлен до УПП 1.3.127.х, КА 2.4.10.х и ERP 2.4.10.х! Промо

Обработка позволяет переносить из УПП 1.3 в ERP 2 документы за выбранный период и остатки. Типовая обработка от фирмы 1С документы не переносит. Также исправлены ошибки типовой обработки. При выходе новых релизов обновление высылается бесплатно в течение года. Разработка будет полезна фирмам-франчайзи, которые периодически выполняют такой перенос данных для заказчиков. Вы можете один раз приобрести обработку переноса, и потом бесплатно получать обновления при выходе новых релизов конфигураций 1С.

29700 руб.

Функция проверки валидности e-mail с использованием регулярных выражений RegExp (7.7) 15

Статья Программист Нет файла openconf v77::БУ 1cv7.md Россия Бесплатно (free) Практика программирования

Функция проверки валидности e-mail с использованием регулярных выражений RegExp (7.7). Данную функцию можно вставить в Глобальный модуль и пользоваться, например, при вводе или сохранении e-mail.

30.10.2011    9293    zaursoft    11       

Ошибка при формировании Отчета по налогу на прибыль за 9 месяцев 2011 г. (версия 11q300x) для Бухгалтерии 7.7 6

Статья Программист Нет файла v77::БУ 1С7:Бух Россия Налог на прибыль Бесплатно (free) Регламентированная отчетность Практика программирования

При формировании Отчета по налогу на прибыль из конфигурации Бухгалтерский учет - Регламентированная отчетность за 9 месяцев 2011 года (версия 11q3002/11q3003/11q3004) - неправильно формируются суммы ежемесячных авансовых платежей в бюджет субъекта Российской Федерации для организаций, имеющих обособленные подразделения (подраздел 1.2 раздела 1 ОСН, строки 220-240)

28.10.2011    11809    vkr    5