Имя: Пароль:
1C
1С v8
Последовательности
0 Boudybuilder
 
10.09.12
15:32
Привет всем. Надеюсь в этой теме обойдется без шуток.)))

Так как мы занимаемся ремонтом мобильников , то в свою УТ я доделал УчетРемонтов.

Но сейчас возникла потребность вечти учет по партиям. Ведь неоднократно документ проведется не той датой и в итоге отчеты уже не те... Чтоб этого избежать начал задумовываться о создании ПартииРемонтов.

Логика такова чтоб документ регистрировать в последовательносте УчетРемонтов , и при проведении проверять остатки. С проверкой остатков вроде вроде все ясно. Но регистрацией в последовательности и работа с ней меня затрудняет.
Какие действия требуются для того чтобы правильно регистрировались последовательности.?
1 МихаилМ
 
10.09.12
15:36
"обойдется без шуток" и " ПартииРемонтов" взаимоисключают
2 DrShad
 
10.09.12
15:38
последовательности и партии связаны косвенно
3 Axel2009
 
10.09.12
15:39
(0) для начала нужно понимать зачем нужна последовательность
4 DrShad
 
10.09.12
15:40
(3) просили же без шуток :)
5 Axel2009
 
10.09.12
15:46
(4) кнопка по которой будет все хорошо, она одна, и красного цвета. и там реально уже всем будет хорошо.
6 Axel2009
 
10.09.12
15:48
(0) списываться то как будет все? по фифо?
01.08 отдали телефон с серией 12345
02.08 отдали телефон с серией 54321
сначала отремонтировали 2ое изделие и пришел 1ый пострадавший.
ему отдали 54321, так чтоли?
7 Boudybuilder
 
10.09.12
20:10
(6) Тут особо мудровать не надо.
Все ремонты ведутся по уникальному идентификатору.
REM001 - Пришел к нам в отдел. (Партия документоприходования - этотобъект.ссылка)
      - Передан на сервис сделали то и то.(ремонт)
      - Пришел из сервиса в отдел
      - В отделе сделали еще что то (поставили новый акб)
      - Выдан клиенту (партия списана)
REM001 - Клиент вернул по гарантии (новая партия того же ремонта)
      -
      - Те же процедуры
      -
      - Выдан клиенту (новая партия списана)
8 DrShad
 
10.09.12
20:12
(7) попустило?
9 Boudybuilder
 
10.09.12
20:24
Создал РегистрНакопления
ПартииРемонтов с измерениями в таком порядке:
1)ІD - строка (уникальный идентификатор)
2)Склад
3)ДокументОприходования
Ресурсы:
1) Количество ( тут всегда +1 или -1 будет)


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

А вот с последовательностями у меня проблемы... )))
Читал у Радченко  ,но не догнал...
10 Boudybuilder
 
10.09.12
20:29
В Последовательности все настроил. Добавил документы участвующие в учете. Регистр ПартииРемонтов.
В типовой вижу что в доках Автоматическое Заполнение Последовательностей Отключено. Я тоже отключил. Как писать в ручную ?



НаборЗаписей = ПринадлежностьПоследовательностям.УчетРемонтов;
   НаборЗаписей.Очистить();
   Запись = НаборЗаписей.Добавить();
   Запись.Период = Дата;
   НаборЗаписей.Записать();
11 DrShad
 
10.09.12
20:29
а (2) тоже не догнал?
12 Boudybuilder
 
10.09.12
20:32
(11) Прошу обьяснить. Я растерян... :(
13 DrShad
 
10.09.12
20:33
последовательность тебе ничем не поможет
14 Boudybuilder
 
10.09.12
20:35
Как не поможет? Тогда зачем она?
Всюду где не читал , чтоб последующие документы отображали правильные данные при измененных прадверительных - НУЖНА ПОСЛЕДОВАТЕЛЬНОСТЬ!
Почему вы тогда ее в этом случае в мусор?
15 Boudybuilder
 
10.09.12
20:38
Щас без этого у меня регистр сведений.
С каждым доком записывается новая запись с идентификатором и , например ,состоянием.  
111 - В очереди
111 - Готов

Без какой либо проверки при проведении. Знаю , Это глупо. Потому если заявление на ремонт перепровести датой больше документом выдачи этого ремонта , то в отчете он будет все еще в очереди на складе , а не выдан...
16 Boudybuilder
 
10.09.12
20:39
Потому задумовывался над тем , чтобы проверять при проведении. И так пришел к тому что надыбал Последовательности...
17 DrShad
 
10.09.12
20:39
(14) потому что она не лечит, а только лишь показывает дату последнего введенного документа, ну и про "восстановлении" проводит в порядке регистрации, но если она изначально не верна, то хоть завосстанавливайся с ней - толку 0
18 Boudybuilder
 
10.09.12
20:40
Тогда что , вобще ее в мусор?
19 DrShad
 
10.09.12
20:41
(18) ага и Радченко туда же
20 Boudybuilder
 
10.09.12
20:42
(19) Таких людей ???
21 DrShad
 
10.09.12
20:46
он тебе что отец?
22 Boudybuilder
 
10.09.12
20:51
Так что предлагаете?
Просто все вітягивать при проведении и исправлять?
23 Boudybuilder
 
10.09.12
20:53
(21) Да ты земляк! ;)
24 DrShad
 
10.09.12
21:01
да, чур, меня
25 Torquader
 
10.09.12
21:03
Чего-то я не понял - о чём вы тут
Есть изделие - это элемент справочника,где указываются все параметры этого изделия - и оно вводится в базу один раз - все остальные документы к нему просто привязаны по отбору.
Что даст последовательность ?
Или вы сначала отдаёте,а потом вводите ремонт ?
26 DrShad
 
10.09.12
21:05
(25) сверхсрочный
27 Boudybuilder
 
10.09.12
21:06
Все.. иду на тренировку. ато мозги пухнут.
28 ilkoder
 
10.09.12
21:08
(25) - и для каждого мобильника отдельный элемент справочника?
29 Boudybuilder
 
10.09.12
21:10
(25) Нет. Мне там элементы не нужны! Всё то строки. ИД , Серийный , АКБ , Неисправность....  Тока контрагент - справочник
30 DrShad
 
10.09.12
21:18
пипец
31 DrShad
 
10.09.12
21:20
череп новый купи, а то походу мышцы вытесняют мозг
32 Boudybuilder
 
10.09.12
22:42
Ок. Куплю...
Яж 1С- ник самоучка. )))

Объясните мне логику работы последовательности.
Я это понимаю так. Если изменился какой то документ , который внес изменения в регистр , то на линии последовательности ставится черта. И от этой черты уже стоит перепровести все доки... Специальной обработкой или же просто если в ней нет нужды. ???
33 DrShad
 
10.09.12
22:44
извини конечно, земляк
я сам самоучка - никакого профильного образования, но сколько я тебя тут наблюдаю - прогресс минимален - не твое это
34 ilkoder
 
10.09.12
22:50
Партия - это просто еще одно измерение в регистре накопления. Пусть партией будет документ приема - в нем указываешь все реквизиты-строки. и в остатках увидишь какие партии закрыты - отремонтированы, какие еще нет
35 Boudybuilder
 
10.09.12
22:54
http://infostart.ru/public/19146/
тут вроде интереснее чем у Радченко!
36 ilkoder
 
10.09.12
22:57
Последовательность нужна когда несколько документов зависят друг от друга и при изменении нужно всю цепочку перепроводить. Или тупо перепроводить весь месяц (как бухи делают) или такой хитрой обработкой следить.
37 Boudybuilder
 
10.09.12
23:37
Поставил в доке автоматическое заполнение последовательностей.
Перепровел все доки.
Захожу в стандартную обработку проведения на вкладку восстановление последовательностей а там последовательность актуальна на  01.01.0001 0:00:00.
Че не так?
38 Boudybuilder
 
11.09.12
00:10
Получается что таблица Последовательность.УчетРемонтов.Границы пустая. Почему границу не ставит?
39 Boudybuilder
 
11.09.12
15:47
(38) Подскажете , что надо , чтобы границу ставило?
40 Axel2009
 
11.09.12
16:31
установитьграницу
41 Boudybuilder
 
11.09.12
18:48
Почему сама не ставится? В доках же автоматично настроено...
42 Torquader
 
11.09.12
20:57
(28) И чем вам не нравится для каждого изделия свой элемент ? Неужели раскидать всю информацию об одном объекте по разным таблицам базы проще ?
43 Boudybuilder
 
11.09.12
23:03
(42) Я над этим думал. Вскоре переделаю .
44 Boudybuilder
 
11.09.12
23:06
(42) До сих пор у меня наименование изделия как строка. А щас бы переделал на справочник номенклатура.

Даже не знаю как это сделать. Ведь там уже больше 3 000 изделий.
гдето Nokia 6300 , а где то Nokia6300 , а мог ктото и так записать Nokia-6300.
А в справочнике Nokia 6300 соответственно Б/У.  Ручками все , что ли?!!!
45 Torquader
 
11.09.12
23:09
Как бы предполагается справочник типов изделий, где мы описываем всё, что относится к конкретной модели (то есть производитель, наименование модели и т.п.), а также справочник изделий, где мы просто выбираем тип изделия - тогда путаницы с типами не будет.
46 Boudybuilder
 
11.09.12
23:18
(45) Не лишнне ли это все?
Ведь когда принимается телефон на ремонт , то там тока модель ,идентификатор ремонта, номер серийник ,  акб номер, Неисправность , комплектация.
Справочником тут только модель как Номенклатура. Остальное все строки.
В отчет вытягиваю инфу из дока приема связаную по идентификатору
47 Boudybuilder
 
12.09.12
00:19
//Регистр накопления ПартииРемонтов
   Движения.ФанПартииРемонтовНак.Записывать = Истина;
   Движения.ФанПартииРемонтовНак.Очистить();
   //Движения.ФанПартииРемонтовНак.Записать();
   
   Запрос = Новый Запрос;
   Запрос.Текст = "ВЫБРАТЬ
   |    ФанРемонтПриемИзСервисаРемонты.ID КАК ID,
   |    ФанРемонтПриемИзСервисаРемонты.НомерСтроки,
   |    ФанРемонтПриемИзСервиса.Контрагент
   |ПОМЕСТИТЬ ВТРемонты
   |ИЗ
   |    Документ.ФанРемонтПриемИзСервиса.Ремонты КАК ФанРемонтПриемИзСервисаРемонты
   |        ЛЕВОЕ СОЕДИНЕНИЕ Документ.ФанРемонтПриемИзСервиса КАК ФанРемонтПриемИзСервиса
   |        ПО ФанРемонтПриемИзСервисаРемонты.Ссылка = ФанРемонтПриемИзСервиса.Ссылка
   |ГДЕ
   |    ФанРемонтПриемИзСервисаРемонты.Ссылка = &Ссылка
   |;
   |
   |////////////////////////////////////////////////////////////////////////////////
   |ВЫБРАТЬ
   |    ФанПартииРемонтовНакОстатки.ДокументОприходования КАК Док,
   |    ФанПартииРемонтовНакОстатки.Склад,
   |    ЕСТЬNULL(ФанПартииРемонтовНакОстатки.КоличествоОстаток, 0) КАК КолОст,
   |    ВТРемонты.ID,
   |    ВТРемонты.НомерСтроки КАК НомерСтроки
   |ИЗ
   |    ВТРемонты КАК ВТРемонты
   |        ЛЕВОЕ СОЕДИНЕНИЕ РегистрНакопления.ФанПартииРемонтовНак.Остатки(
   |                &Момент,
   |                ID В
   |                    (ВЫБРАТЬ
   |                        Р.ID
   |                    ИЗ
   |                        ВТРемонты КАК Р)) КАК ФанПартииРемонтовНакОстатки
   |        ПО ВТРемонты.ID = ФанПартииРемонтовНакОстатки.ID
   |            И ВТРемонты.Контрагент = ФанПартииРемонтовНакОстатки.Склад
   |
   |СГРУППИРОВАТЬ ПО
   |    ВТРемонты.ID,
   |    ФанПартииРемонтовНакОстатки.ДокументОприходования,
   |    ФанПартииРемонтовНакОстатки.Склад,
   |    ЕСТЬNULL(ФанПартииРемонтовНакОстатки.КоличествоОстаток, 0),
   |    ВТРемонты.НомерСтроки
   |
   |УПОРЯДОЧИТЬ ПО
   |    НомерСтроки";
   
   Запрос.УстановитьПараметр("Момент",МоментВремени());
   Запрос.УстановитьПараметр("Ссылка",Ссылка);
   
   Выборка = Запрос.Выполнить().Выбрать();
   
   Пока Выборка.Следующий() Цикл
       Если Выборка.КолОст = 0 Тогда
           Сообщение = Новый СообщениеПользователю;
           Сообщение.Текст = ""+Ссылка+"На сервисе "+Контрагент+" ID: "+Выборка.ID+" ремонта отсутствует!!! НомерСтроки"+Выборка.НомерСтроки;
           Сообщение.Поле = "";
           Сообщение.Сообщить();
           Отказ = Истина;
       КонецЕсли;
       
       ДвижениеРасход = Движения.ФанПартииРемонтовНак.ДобавитьРасход();
       ДвижениеПриход = Движения.ФанПартииРемонтовНак.ДобавитьПриход();
       
       ДвижениеРасход.ID          = Выборка.ID;
       ДвижениеРасход.Количество  = 1;
       ДвижениеРасход.Склад       = Контрагент;
       ДвижениеРасход.Период      = Дата;
       ДвижениеРасход.ДокументОприходования = Выборка.Док;
       
       ДвижениеПриход.ID          = Выборка.ID;
       ДвижениеПриход.Количество  = 1;
       ДвижениеПриход.Склад       = Склад;
       ДвижениеПриход.Период      = Дата;
       ДвижениеПриход.ДокументОприходования = Выборка.Док;
   КонецЦикла;


Вот этим проверяю остатки.
Пробую перепроводить док - все ок. Препроводить выставив дату меньше - ок. Но если хоть на секунду больше - все! Ошибки. Показывает по всех позициях - 0!!!
Что такое?
48 Boudybuilder
 
12.09.12
01:02
Нашлась проблема. Точно пока еще не знаю , правильно я написал или нет , но работает при перепроведении.


   Движения.ФанПартииРемонтовНак.Очистить();
   Движения.ФанПартииРемонтовНак.Записывать = Истина;
   Движения.ФанПартииРемонтовНак.Записать();//Вот она строка которую надо было дописать.


Все ли правильно?
49 Goggy
 
12.09.12
01:11
боже мой... Так захватывающе, что аж до конца дочитал...
(0)Я бы вам рекомендовал хорошенько приложиться к документации.
50 Boudybuilder
 
15.09.12
00:50
Почему граница последовательности 01.01.0001 0:00:00?
51 Boudybuilder
 
15.09.12
00:50
на что обратить внимание чтобы исправить данную ошибку?
52 Boudybuilder
 
15.09.12
11:05
(50) Подскажите как решить проблему эту...
Компьютеры — это как велосипед. Только для нашего сознания. Стив Джобс