Имя: Пароль:
1C
1С v8
Перенос Кода с 1с 7.7 на 1с 8.3
0 Albatros37
 
23.06.25
09:14
Всем привет, подскажите пж нужно перенести код 1с 7.7 на 1с 8.3. На 8.3 нет БухгалтерскихИтогов,но есть РегистрыБухгалтерии, если я все правильно понимаю то в данном случае нужно работать с ним
вот кусок кода обработки проведения:
    ИтПУ=СоздатьОбъект("БухгалтерскиеИтоги");
    ИтПУ.ИспользоватьСубконто(ВидыСубконто.ТоварыНаОтвХранении,Товар,2);
    ИтПУ.ВыполнитьЗапрос(ТекущийДокумент(),,"ПУ.2");
    ОстатокКип=ИтПУ.СНД(3)-ИтПУ.СНК(3);
    ОстатокВес=ИтПУ.СНД(1)-ИтПУ.СНК(1);
    Если (ОстатокКип=ИтогКип) И (ОстатокВес<>ИтогВес) Тогда
        Сообщить("Вес товара на остатке не соотвествует отгружаемому весу. Явно имеется ошибка. Пробую перепровести приход.");
        // требуется перепровести приход
        ИтПУ=СоздатьОбъект("БухгалтерскиеИтоги");
        ИтПУ.ИспользоватьСубконто(ВидыСубконто.ТоварыНаОтвХранении,Товар,2);
        ИтПУ.ВыполнитьЗапрос(ДатаДок-730,ДатаДок,"ПУ.2",,,,"Операция",1);
        ИтПУ.ВыбратьПериоды();
        Пока ИтПУ.ПолучитьПериод()=1 Цикл
            Если ИтПУ.Операция.Документ.Вид()="ПриходПартииОтвХранение" Тогда
                Д=СоздатьОбъект("Документ.ПриходПартииОтвХранение");
                НайденыйДок="";
                Если Д.НайтиДокумент(ИтПУ.Операция.Документ)=1 Тогда
                    НайденыйДок=Д.ТекущийДокумент();
                    ОткрытьФорму(НайденыйДок,"Провести");
                    Прервать;
                КонецЕсли;
            КонецЕсли;
        КонецЦикла;
        Если ПустоеЗначение(НайденыйДок)<>1 Тогда
            // контрольная проверка
            ИтПУ=СоздатьОбъект("БухгалтерскиеИтоги");
            ИтПУ.ИспользоватьСубконто(ВидыСубконто.ТоварыНаОтвХранении,Товар,2);
            ИтПУ.ВыполнитьЗапрос(ТекущийДокумент(),,"ПУ.2");
            ОстатокКип=ИтПУ.СНД(3)-ИтПУ.СНК(3);
            ОстатокВес=ИтПУ.СНД(1)-ИтПУ.СНК(1);
            Если (ОстатокКип=ИтогКип) И (ОстатокВес<>ИтогВес) Тогда
                Сообщить("Был перепроведен "+СокрЛП(НайденыйДок)+". Однако исправить вес не удалось.Просьба - разобраться!");
            КонецЕсли;
        Иначе
            Сообщить("Приход перепроведён.Ошибка устранена.");
        КонецЕсли;  
    КонецЕсли;
1 Волшебник
 
23.06.25
09:20
Используйте чёрный запрос
2 Волшебник
 
23.06.25
09:21
Учтите, что в 7.7 в этой конструкции ДатаДок-730 вычитаются дни, а в v8 это будут секунды, так что правильно будет так:
ДатаДок-730*86400

86400 - число секунд в сутках
3 СвинТуз
 
23.06.25
09:35
(0)
Забавная история.
Хранить текущий остаток веса на момент проведения в реквизите документа и сверять.
4 VladZ
 
23.06.25
09:43
(0) Выбросить этот код, как ненужный.
5 Fedor-1971
 
23.06.25
09:55
(0) прямой перенос такого кода не имеет смысла
Ты обрисуй общую задачу, т.к. бух счёта "ПУ.2" может не быть в 1С 8
6 Albatros37
 
23.06.25
10:03
(5) Задача состоит перевести отдел с 7.7 на 8.3, ПУ.2 это счет в плане счетов
7 Волшебник
 
23.06.25
10:06
(6) Создайте новую конфу с нуля.
8 Albatros37
 
23.06.25
10:07
Чем я и занимаюсь
9 Волшебник
 
23.06.25
10:08
(8) Плохо стараетесь
10 Fedor-1971
 
23.06.25
10:08
(6) перевести с 7.7 в какую конфигурацию? (БП, КА, ЕРП)
Или тупо хочешь создать самописку?
11 Albatros37
 
23.06.25
10:10
(10) Да, самописная
12 СвинТуз
 
23.06.25
10:10
(0)
Это все безобразие (восстановление последовательности) в какой момент происходит?
13 Fedor-1971
 
23.06.25
10:12
(11) Опыта хватит? может имеет смысл построить склад на регистрах остатков вместо бухгалтерии? остатки берём прямо из регистра и не храним в документах
БСП - интегрировал или всё с 0?
14 СвинТуз
 
23.06.25
10:13
(13)
Нет компоненты "Склад". Нельзя.
15 Albatros37
 
23.06.25
10:15
(12) В момент проведения документа
16 СвинТуз
 
23.06.25
10:16
(15)
Крутые перцы ))
17 Albatros37
 
23.06.25
10:16
Все с 0
18 Волшебник
 
23.06.25
10:17
Пригласите аналитика
19 Fedor-1971
 
23.06.25
10:31
(17) Тогда, сначала выстраиваешь систему хранения данных и под неё делаешь документы (только по уму, а не "так было")
И (18) прав - нужен аналитик, сначала выясняем что нужно, на концептуальном уровне, а не тупо перегоняем код и гнутые решения в новую платформу (бо, потом будет "8 ещё сырая")
20 AAA
 
23.06.25
10:55
По-моему, это безумие в 2025 году писать с нуля БП. Тем более с такой стартовой позиции. И безумно за это платить
21 vicof
 
23.06.25
10:56
Боюсь, после призыва аналитика, придется звать еще технического и функционального архитекторов. А они будут призывать гендира. А он всех выгонит, и скажет возвращаться на 7-ку.
22 vicof
 
23.06.25
10:57
(20) +1
23 Fedor-1971
 
23.06.25
11:05
(21) та не, скажет "Я вам ....(по мере воспитанности) купил 1С 8 - вот и сделайте мне красиво. Пошли(если культурно) вместе с аналитиком по предприятию и собрали все хотелки подразделений и арбайтен, солнце ещё высоко"

Обычно - Я купил бухгалтерию, а она не считает сама. Г... ваша 8 + предъява бухам: обеспечьте работоспособность (а учить их и ставить учёт - лишняя трата денег)
24 uno-group
 
23.06.25
11:12
Смысл с 7.7 переносить на 8.3. самописку на самописку?
Ладно что то свое добавить в готовые конфы с обновлениями и остальными плюшками 8.3. А так что ты не можешь на 7,7 реализовать из того что тебе доступно в 8.3?
25 uno-group
 
23.06.25
11:17
Сообщить("Вес товара на остатке не соотвествует отгружаемому весу. Явно имеется ошибка. Пробую перепровести приход.");
Что это за бред? На остатке есть 10 шт. Менеджер с дуру вбил 12 и мы из-за этого приход дергаем, а не говорим менеджеру, что он сам дурак? Не нужно кривой код и бизнес логику построенную на хотелках левой пятки Марии Ивановны в новую конфигурацию переносить.
26 Fedor-1971
 
23.06.25
11:20
(24) Может ТС нужно сделать маленький складик (цеховую кладовку) или какой-то навёрнутый адресный и обновление ему не нужны?
В типовых много плюшек, но мы не знаем что за задание у ТС и размер конторы
27 ptiz
 
23.06.25
11:30
(0) Начать с изучения платформы 1С 8 по книжкам и курсам.
28 H A D G E H O G s
 
23.06.25
11:50
Начать следует с увольнения. Им же можно и закончить и идти в курьеры. Говорят, там платят как прогам.
29 bolder
 
23.06.25
14:37
Какая бредовая автоматизация у ТС.Имеется документ который бесконечно перепроводят.При этом документ "знает правильные итоги" регистра.Несмотря на это,он все равно итоги регистра считывает,и (!)бросается врукопашную выдавать пользователю документы прихода для перепроведения и "исправления" остатка регистра.Просто чудо,а не автоматизация)
30 Djelf
 
гуру
23.06.25
19:47
(0) у 7.7 и 8.3 разная идеология.
7.7 у Вас нетленка?
Переносить чем будете, на КД2, или что-то самопальное?
Переносить надо документами, они там в 8.3 что-то правильно заполнят, что-то нет, надо ковыряться как вы заполнилили документы в кд2.
Такой себе квест...
31 Злопчинский
 
23.06.25
19:26
(29) про бредовое перепроведение постоянное документы - расскажи разработчикам УНФ. Заявка клиента по мере утрясания товарного состава, количеств и цен - все делается в одном документе и перепроводится. В 8ке это правильно.