Имя: Пароль:
1C
1C 7.7
v7: Создание документа программно
0 san4ez1008
 
28.03.17
03:54
Ребят,помогите пожалуйста, не могу никак создать документ "Заявка покупателя" программно, вид "заявка на склад", не могу понять как с перечислениями работать((
1 san4ez1008
 
28.03.17
03:55
Конф комплексная 4.5
2 tmp_loader
 
28.03.17
04:50
(0) Учили в детстве документацию читать?
3 san4ez1008
 
28.03.17
05:20
(2) в детстве не учили,в универе только пришлось
Вообще пытался вникнуть,но ничего не понял. Начал создавать документ
    Документ = СоздатьОбъект("Документ.ЗаявкаПокупателя");
А дальше что?
4 tmp_loader
 
28.03.17
05:22
(3) Что конкретно не понятно? Ничего не понял, значит не читал.
5 vcv
 
28.03.17
05:28
(3) В дальше
Документ.ВидОперации = Перечисление.ВидыОперацийЗаявок.НаСклад;
6 san4ez1008
 
28.03.17
05:32
(5) вот ВидОперации я и не нашел в СП...
7 tmp_loader
 
28.03.17
05:33
(6) А то что это реквизит дока, это ничего не значит?
8 san4ez1008
 
28.03.17
05:34
(7) еще не все реквизиты разобрал, прошу прощения((
9 vcv
 
28.03.17
05:34
(6) Это реквизит шапки документа. И начни читать процедуру ВводНового() в модуле формы документа. Нам всё написано о том, как нужно создавать новые документы.
10 tmp_loader
 
28.03.17
05:39
(8) Зачем не разобравшись писать начал?
11 Birmingem
 
28.03.17
11:31
Документ = СоздатьОбъект("Документ.ЗаявкаПокупателя");
Документ.Новый();
Документ.ДатаДок=
Документ.ВидОперации=
...
...
Документ.Записать();
12 DrZombi
 
гуру
28.03.17
11:37
(11) ТС еще до ДатаДок не дочитал, вы спешите :)
13 Злопчинский
 
28.03.17
15:48
Примерно так:
.
ДокЗаявкаОсновная = СоздатьОбъект("Документ.ЗаявкаПокупателя");
ДокЗаявкаОсновная.Новый();
глЗаполнитьШапку(ДокЗаявкаОсновная,);
ДокЗаявкаОсновная.Контрагент = парКлиент;
глПриИзмененииКонтрагента(ДокЗаявкаОсновная);
ДокЗаявкаОсновная.ВидОперации = Перечисление.ВидыОперацийЗаявок.НаСклад;
ДокЗаявкаОсновная.ВыбратьСтроки();
Пока ДокЗаявкаОсновная.ПолучитьСтроку() = 1 Цикл
  //заполнить строку: цена, единица, коэффициент, количество
  глПересчетТаблЧасти(ДокЗаявкаОсновная,"Цена");
КонецЦикла;
ДокЗаявкаОсновная.СуммаВзаиморасчетов = глПересчет(ДокЗаявкаОсновная.Итог("Сумма")+
?(ДокЗаявкаОсновная.СуммаВклНП =1,0,ДокЗаявкаОсновная.Итог("СуммаНП"))+?(ДокЗаявкаОсновная.СуммаВклНДС=1,0,ДокЗаявкаОсновная.Итог("СуммаНДС")),
ДокЗаявкаОсновная.Валюта,ДокЗаявкаОсновная.Курс,ДокЗаявкаОсновная.Договор.ВалютаВзаиморасчетов,ДокЗаявкаОсновная.ДатаДок);
ДокЗаявкаОсновная.Записать();
14 san4ez1008
 
31.03.17
11:22
(11) (13) спасибо за помощь,но есть еще вопрос, надо программно в столбце "единица" указать "шт", но не получается(

Единица = СоздатьОбъект("Справочник.Единицы");
Единица.НайтиПоНаименованию("шт");
Документ.Единица = Единица.ТекущийЭлемент();
15 HawkEye
 
31.03.17
11:23
(14) потому что ты еще не прочитал про подчиненные справочники )))
16 АгентБезопасной Нацио
 
31.03.17
11:25
(15) процесс долгий... сначала буквы изучить, потом слоги...
17 Herby
 
31.03.17
11:36
зачем новоиспеченному выпускнику ВУЗа изучать 1с 7.7?
бесполезная трата времени и сил.

не, я 7.7 люблю, но новичкам изучать ее - бред.
18 АгентБезопасной Нацио
 
31.03.17
11:41
(17) "изучать" - сильно сказано.
19 Злопчинский
 
31.03.17
13:01
В цикле где идёт перебор строк и их заполнение
20 Злопчинский
 
31.03.17
13:03
Докзаявкаоснрвная.единица = доза явка основная.номенклатура.базовая единица;
Докзаявкаосновная.коэффициент=1;
21 Базис
 
naïve
31.03.17
13:07
Почитай пока подходящие куски кода. Подходящие - это те, которые найдёшь поиском по всем текстам того фрагмента, что тебе уже понятен. Поиск по всем текстам находится в меню "Конфигурация".
22 Базис
 
naïve
31.03.17
13:08
Или читай firststeps.ru/1c
23 san4ez1008
 
04.04.17
02:50
(20) а я как обычно гланды через (_*_) выдираю... спасибо большое
24 VladZ
 
04.04.17
05:54
(0) Самый хороший пример - это готовый код. Ищешь в конфе нужный тебе код и делаешь так же.
25 АгентБезопасной Нацио
 
04.04.17
06:51
(24) не факт, что код найдется, и будет правильный....
хотя для начала пойдет. почти все так учились...
26 VladZ
 
04.04.17
07:05
(25) Для типовых задач вероятность, что подобный код уже есть - 80-90%.
27 Злопчинский
 
04.04.17
08:00
(26) и даже есть люди которые знают что он есть и даже в каком месте. Здесь вам не там!
28 san4ez1008
 
07.04.17
09:51
не могу найти пробел в строке(

Разд=Найти(ТЗ1.Код1," ");

выдает 0
29 Это_mike
 
07.04.17
09:53
(28) тяжело искать  черную кошку в темной комнате, особенно если ее там нет...
30 san4ez1008
 
07.04.17
09:56
(29) в экселе есть код/артикул 259 006/1 798 496
отсекаю все, что есть после /, запихал в ТЗ, пытаюсь убрать пробел в 259 006 строчкой выше-не помогает
31 san4ez1008
 
07.04.17
09:57
пытаюсь преобразовать 259 006 в число-первые 3 цифры здрасьте, остальные-досвидос
32 Это_mike
 
07.04.17
09:58
(30) ну так получи символ из нужного места, и посмотри, убедись, что это не пробел...
33 san4ez1008
 
07.04.17
10:11
Разд=КодСимв(сред(ТЗ1.КодСамбери1,4,1));
Сообщить(Разд);

однако 160 выдал
34 1dvd
 
07.04.17
10:13
Символы.НПП
35 Это_mike
 
07.04.17
10:14
(34) в клюшках такого нет
36 Это_mike
 
07.04.17
10:15
(33) "ну вот видишь, фосфор уже начал действовать!"©
удаляй симв(160)
Я не хочу быть самым богатым человеком на кладбище. Засыпать с чувством, что за день я сделал какую-нибудь потрясающую вещь — вот что меня интересует. Стив Джобс