Версия для печати темы (https://pro1c.org.ua/index.php?s=aa264af19be5f1472bc3b8f241ed07cb&showtopic=2964)
Украинский 1С форум: всё про 1С 8.3, 1С 8.2, 1С 8.1, 1С 8.0, 1С 7.7 _ Программирование в 1С Предприятие 7.7 _ Налоговая накладная, 2011
Автор: yfrf111 17.02.11, 12:47
Пожалуста помогите!
Немогу понять, как прописать в модуле, форму накладной. Например, порядковий номер, автоматически заполнялся, или номер телефона. Работоспособный код, как написать? Открыть конфигурацию для Украины с новыми бланками, там обнаружил в клеточках формулы, Сред(НомерДокумента,1,1) …… Сред(ФирмаТелефоны,1,1) как объявить переменные и прописать в модуле, не знаю.(
Да, скажите, да это легко, а вот пока, не знаю как!
Автор: Ziam 17.02.11, 14:14
В модуле формы посмотрите процедуру Печать2011(). Она вроде во всех конфах на 7.7 так называется. Там свои переменные найдете, и как они объявляются и что с ними делают. Плюс сможете разобраться как осуществляется печать документа в 1С 7.7
Автор: yfrf111 17.02.11, 19:50
Цитата(Ziam @ 17.02.11, 15:14)
![*](http://pro1c.org.ua/style_images/pro1c/post_snapback.gif)
В модуле формы посмотрите процедуру Печать2011(). Она вроде во всех конфах на 7.7 так называется. Там свои переменные найдете, и как они объявляются и что с ними делают. Плюс сможете разобраться как осуществляется печать документа в 1С 7.7
Да, это я и знаю, что для Украины, там все есть, с моего вопроса это и так понятно. Там просто, все переменные в куче, что где и как не пойму! (Простой пример, на дате или телефонах был, бы достаточно. А для конфигурации, А4 БТР, не пойму. Самой фирмы А4 уже нет, не у кого спросить! 1С консультация, не смогла помочь, сказала что обратиться к разработчикам.(
Автор: Vofka 17.02.11, 20:00
В модуле формы (скорей всего) ищите переменную НомерДокумента, посмотрите где она устанавливается
Автор: Ziam 18.02.11, 7:35
З.Ы, Переменные в 1С объявляются в момент присваивания им какого-нибудь значения.
НомерДокумента = "";
Вот вам пример объявления переменной. Если вас именно эта переменная интересует позже смогу сказать строчку модкля, где она объявляется.
Автор: yfrf111 18.02.11, 12:17
Цитата(Ziam @ 18.02.11, 8:35)
![*](http://pro1c.org.ua/style_images/pro1c/post_snapback.gif)
З.Ы, Переменные в 1С объявляются в момент присваивания им какого-нибудь значения.
НомерДокумента = "";
Вот вам пример объявления переменной. Если вас именно эта переменная интересует позже смогу сказать строчку модкля, где она объявляется.
Неплохо, полностью работающий код, написать! На примере с датой или телефонами. Я так понимаю, дальше все по аналогии, примера сделано, только менять имена переменых?
Автор: Ziam 18.02.11, 14:16
Чото я запутался, что вам надо.
Вам надо подключить к какой-то базе новую форму НН ?
У вас есть типовая конфа в которой есть эта форма и вы там не можете разобраться как она подключена? Или у вас нет типовой конфы с этой формой? Или у вас есть только макет? (сейчас у меня именно такое чувство. У вас есть макет, но нет кода, который его заполняет).
Ибо фраза
Цитата
Неплохо, полностью работающий код, написать!
мне ни о чем не говорит. Я вам написал
полностью работающий код. Можно его в модуль вставлять и он будет работать. Только я так понимаю, он делает не совсем то, что вы хотели. А я до сих пор не могу понять, чего вы хотите.
Автор: alex040269 18.02.11, 14:28
Цитата(yfrf111 @ 18.02.11, 13:17)
![*](http://pro1c.org.ua/style_images/pro1c/post_snapback.gif)
Неплохо, полностью работающий код, написать! На примере с датой или телефонами. Я так понимаю, дальше все по аналогии, примера сделано, только менять имена переменых?
Например, НомерДокумента должен содержать 10 знаков и віравниваться по правому краю:
НомерДокумента = Прав(" "+НомерДокумента,10);
На форме в каждой клетке:
Сред(НомерДокумента,1,1)
Сред(НомерДокумента,2,1)
Сред(НомерДокумента,3,1)
и т.д.
Автор: yfrf111 18.02.11, 15:30
Цитата(Ziam @ 18.02.11, 15:16)
![*](http://pro1c.org.ua/style_images/pro1c/post_snapback.gif)
Чото я запутался, что вам надо.
Вам надо подключить к какой-то базе новую форму НН ?
У вас есть типовая конфа в которой есть эта форма и вы там не можете разобраться как она подключена? Или у вас нет типовой конфы с этой формой? Или у вас есть только макет? (сейчас у меня именно такое чувство. У вас есть макет, но нет кода, который его заполняет).
Ибо фраза мне ни о чем не говорит. Я вам написал полностью работающий код. Можно его в модуль вставлять и он будет работать. Только я так понимаю, он делает не совсем то, что вы хотели. А я до сих пор не могу понять, чего вы хотите.
Имено так и есть! Мне надо подключить к какой-то базе, новую форму НН!
У меня есть, типовая конфа в которой есть эта форма, и я там не могу разобраться как она подключена! Половину уже потключил, то что по шаблону, а дальше пошло программированье, Дата, Номер документа, телефоны, и.т.д., то что, должно быть в квардратиках.
Автор: Flexy 18.02.11, 15:43
Так что мешает глянуть как в Типовой заполняется эта форма?
Или вы думаете, что тут все Телепаты и помогут вам прикрутить новую форму НН к вашей НеТиповой Конфе?
Автор: yfrf111 18.02.11, 15:48
Цитата(alex040269 @ 18.02.11, 15:28)
![*](http://pro1c.org.ua/style_images/pro1c/post_snapback.gif)
Например, НомерДокумента должен содержать 10 знаков и віравниваться по правому краю:
НомерДокумента = Прав(" "+НомерДокумента,10);
На форме в каждой клетке:
Сред(НомерДокумента,1,1)
Сред(НомерДокумента,2,1)
Сред(НомерДокумента,3,1)
и т.д.
Спасибо, ясней не куда, обьяснили!
Автор: yfrf111 18.02.11, 17:11
Цитата(alex040269 @ 18.02.11, 15:28)
![*](http://pro1c.org.ua/style_images/pro1c/post_snapback.gif)
Например, НомерДокумента должен содержать 10 знаков и віравниваться по правому краю:
НомерДокумента = Прав(" "+НомерДокумента,10);
На форме в каждой клетке:
Сред(НомерДокумента,1,1)
Сред(НомерДокумента,2,1)
Сред(НомерДокумента,3,1)
и т.д.
С датой и номером документа, все прошло гладко, застрял на телефонах
Написал ДтФирма = Прав(ДтФирма.Телефон+ДтФирма,10); и в ячейках Прав(ДтФирма.Телефон,1,1) и.т.д В самой один 1С запускаю все что с переменой ДтФирма пропало, и ругаеться Прав(ДтФирма.Телефон,1<<?>>,1) Ожидается символ ')'
Автор: Ziam 18.02.11, 19:03
Полный код, пожалуйста. А то мы до Пасхи гадать будем.
Автор: yfrf111 18.02.11, 19:22
Автор: 5_kopeek 19.02.11, 0:46
Почему
ДтФирма = Прав(ДтФирма.Телефон+ДтФирма,10);
Насколько я понимаю, ДтФирма -- это фирма, зачем ее прибавлять к номеру телефона? Попробуйте так
ТелФирмы = Прав(ДтФирма.Телефон,10);
А на это
Прав(ДтФирма.Телефон,1<<?>>,1)
правильно ругается: функция Прав имеет 2 параметра (в отличие от функции Сред), а Вы ей даете 3 параметра. Попробуйте так
Сред(ТелФирмы,1,1)
Сред(ТелФирмы,2,1)
Сред(ТелФирмы,3,1)
и т.д.
Автор: yfrf111 19.02.11, 12:10
Цитата(5_kopeek @ 19.02.11, 1:46)
![*](http://pro1c.org.ua/style_images/pro1c/post_snapback.gif)
Почему
ДтФирма = Прав(ДтФирма.Телефон+ДтФирма,10);
Насколько я понимаю, ДтФирма -- это фирма, зачем ее прибавлять к номеру телефона? Попробуйте так
ТелФирмы = Прав(ДтФирма.Телефон,10);
А на это
Прав(ДтФирма.Телефон,1<<?>>,1)
правильно ругается: функция Прав имеет 2 параметра (в отличие от функции Сред), а Вы ей даете 3 параметра. Попробуйте так
Сред(ТелФирмы,1,1)
Сред(ТелФирмы,2,1)
Сред(ТелФирмы,3,1)
и т.д.
Ошибок в 1С нет, но и не работает, не высвечивает телефон! Ваш вариант, неверен.
Автор: 5_kopeek 19.02.11, 12:24
Цитата(yfrf111 @ 19.02.11, 13:10)
![*](http://pro1c.org.ua/style_images/pro1c/post_snapback.gif)
Ошибок в 1С нет, но и не работает, не высвечивает телефон! Ваш вариант, неверен.
Вставьте после ТелФирмы = ... строку
Сообщить("Тел фирмы ="+ТелФирмы+"=");
и скажите, что напишет при формировании печатной формы.
Автор: yfrf111 19.02.11, 21:31
Цитата(5_kopeek @ 19.02.11, 13:24)
![*](http://pro1c.org.ua/style_images/pro1c/post_snapback.gif)
Вставьте после ТелФирмы = ... строку
Сообщить("Тел фирмы ="+ТелФирмы+"=");
и скажите, что напишет при формировании печатной формы.
ТелФирмы = Сообщить<<?>>("Тел фирмы ="+ТелФирмы+"=");
{Документ.НалоговаяНакладнаяРасходная.Форма.Модуль(89)}: Процедура вызывается как функция (Сообщить)
Автор: logist 19.02.11, 21:45
Цитата(yfrf111 @ 19.02.11, 21:31)
![*](http://pro1c.org.ua/style_images/pro1c/post_snapback.gif)
ТелФирмы = Сообщить<<?>>("Тел фирмы ="+ТелФирмы+"=");
{Документ.НалоговаяНакладнаяРасходная.Форма.Модуль(89)}: Процедура вызывается как функция (Сообщить)
Напишите просто
Сообщить("Тел фирмы ="+ТелФирмы+"=");
"ТелФирмы =" не надо.
Автор: 5_kopeek 19.02.11, 21:48
Вы не правильно трактовали мою просьбу (каюсь, надо было подробно писать). Следовало писать так:
ТелФирмы = Прав(ДтФирма.Телефон,10);
Сообщить("Тел фирмы ="+ТелФирмы+"=");
Исправьте и сообщите, что напишет.
Автор: yfrf111 20.02.11, 11:12
Цитата(5_kopeek @ 19.02.11, 22:48)
![*](http://pro1c.org.ua/style_images/pro1c/post_snapback.gif)
Вы не правильно трактовали мою просьбу (каюсь, надо было подробно писать). Следовало писать так:
ТелФирмы = Прав(ДтФирма.Телефон,10);
Сообщить("Тел фирмы ="+ТелФирмы+"=");
Исправьте и сообщите, что напишет.
После многих, подсказок получился верный симбиоз. Верное решение такое, в модуле пишем ТелФирмы = Прав(ДтФирма.Телефон,10); а в ячейках Сред(ДтФирма.Телефон,1,1) Сред(ДтФирма.Телефон,2,1) и .т.д и заработало всем спасибо!
Автор: Vofka 20.02.11, 11:39
yfrf111, вы б плюсанули тем, кто помагал
Автор: yfrf111 20.02.11, 12:54
Дошол до" Вид цивільно-правового договору " и застопорился, там где нужно вбить в ячейки від и № По какой формуле, в ячейки вбивать и как обьявлять?
Автор: yfrf111 21.02.11, 13:14
"Включно до ЄРПН" как записать в модуле? Чтобы когда в форме, нажимаешь на флажок, ставилось не "1" а "Х"
Автор: 5_kopeek 21.02.11, 13:42
Цитата(yfrf111 @ 21.02.11, 14:14)
![*](http://pro1c.org.ua/style_images/pro1c/post_snapback.gif)
"не "1" а "[b]Х"
ЕРПН = ?(ЕРНН = 1, "Х","");
При условии, что этот реквизит в Вашей базе имеет такой же идентификатор.
Не ленитесь посмотреть, как реализован тот или иной момент в конфигурации 281 релиза. Большинство вопросов отпадет.
Автор: yfrf111 21.02.11, 14:16
Цитата(5_kopeek @ 21.02.11, 14:42)
![*](http://pro1c.org.ua/style_images/pro1c/post_snapback.gif)
ЕРПН = ?(ЕРНН = 1, "Х","");
При условии, что этот реквизит в Вашей базе имеет такой же идентификатор.
Не ленитесь посмотреть, как реализован тот или иной момент в конфигурации 281 релиза. Большинство вопросов отпадет.
Я смотрю для Укаины Релиз 035 Б+Т+С+З+К
Для Страница = 1 По 2 Цикл //////////наверно для переключений, между страницами?
Таб.ВывестиСекцию( "Пробел" ); ////Секция пробел
Если Страница = 1 Тогда/////// Если страница 1 тогда будет
Оригинал = ?(Оставляем = 1, "","Х");;
Копия = "";
ЕРПН = ?(ЕРНН = 1, "Х",""); /////ЕРПН в флажке формы, формула нужна?
ОстаетсяПеч = ?(Оставляем = 1, "Х","");
ИначеЕсли Страница = 2 Тогда /////Если страница 2, тогда будет условие
Копия = "Х";
Оригинал = "";
ТипПричиныПеч = "";
ЕРПН = "";
ОстаетсяПеч = "";
КонецЕсли;
Вроде все просто, только индефикаторы поменять. НО У МЕНЯ КОНФИГУРАЦИЯ а4: БТР РЕЛИЗ 3.22/99 ТАМ ВСЕ НЕ ТАК, КАК В ОСТАЛЬНЫХ СТАНДАРТНЫХ КОНФИГУРАЦИЯХ!
ЕРПН в флажке формы, формула нужна?
а4: БТР РЕЛИЗ 3.22/99 И где форма диалога, накладной, может прятаться? С таблицей Диалог просто выбор времени, и большая, кнопка Сформировать, а диалога Таблицы нет, при проверки, берет диалог бо зна от куда.
Этот пример, у меня не работает!
Автор: yfrf111 22.02.11, 11:31
Всем спасибо! Налоговую накладную, 2011 я, с вашей помощью сделал!
Автор: roman457 05.05.11, 12:44
Доброго времени суток форумчане. прочитал сообщения в этой ветке и столкнулся с похожим случаем. но требуется некоторые объяснения.
вопрос по нал.накл. в частности только касательно строки с номером свидетельства.
1. есть контрагенты у которых свидетельство начитаеться с "0" . в моём варианте данное поле было представлено как числовое .(соответственно оно режит первые ноли и я его за это не веню.)
НО не могу строковое выражение разделить по каждой клеточке.
КАК сделать строковое выражение чтобы оно отображалось по клеточкам и при этом справа на лево.(в строковом отображении он игнорирует предп исание прав
КонтрагентНомСвид1 = ?(ПустоеЗначение(Контрагент.НомерСвидетельства)=1, "0", Контрагент.НомерСвидетельства);
КонтрагентНомСвид =прав(" "+КонтрагентНомСвид1,10);
------------------------------------------------------------------------
в чём моя ошибка
Автор: Ardi 05.05.11, 18:12
КонтрагентНомСвид =прав(" "+СокрЛП(КонтрагентНомСвид1),10);
Автор: lucenko-uri 10.05.11, 13:05
Помогите пожалуйста! Очень надо, чтобы в налоговой накладной номер договора был смещен вправо (т.е. пустые клетки в номере были слева). Что прописать в модуле и в самой форме. Заранее благодарен.
?
Автор: Vofka 10.05.11, 13:16
Надоело. Тема закрыта.
Украинский 1С форум: всё про 1С 8.3, 1С 8.2, 1С 8.1, 1С 8.0, 1С 7.7
https://pro1c.org.ua