Переключение на Главную Страницу Страницы: [1]  ОтправитьПечать
Очень популярная тема (более 25 ответов) Движения одного документа у другого (число прочтений - 71690 )
noxxx
Full Member
***
Отсутствует


1c++ rocks 8)

Сообщений: 239
Местоположение: Москва
Зарегистрирован: 24. Августа 2007
Пол: Мужской
Движения одного документа у другого
30. Октября 2009 :: 10:52
Печать  
По мотивам http://www.forum.mista.ru/topic.php?id=440745

База крутится на SQL 2005, УРБД, 1 дочка, mdf 13,5 Гб, ldf 2,26 Гб.

Сегодня (уже во второй раз) обнаружили документ "Заявка от покупателя", который не сделал движения по регистру заявок. Галочка напротив регистра стоит, а движений нет. Сегодня же после ковыряний в базе нашли документ "ПКО (расчеты)" с движениями документа "Отказ". Самого документа "Отказ" в базе нет.

Из "подозрительных" вещей:

1. Есть дубли в таблице _1scrdoc, _1ssbsel и т.п.
2. Есть ошибки в таблице 1SUIDCTL (проверял с помощью http://www.1cpp.ru/forum/YaBB.pl?num=1228926967)
3. Проблемный документ находится в конце дня в 23:59:59 с парой сотен других документов.
4. Если с заявкой от покупателя помогало перепроведение, то с ПКО это не помогает. После перепроведения все левые движения опять появляются. От распроведения они пропадают, от проведения появляются.

Может здесь есть у кого-нибудь есть мысли от чего это всё происходит? Скоро от меня потребуют объяснений о причинах происходящего, а другого ответа, кроме как "глюки движка", у меня пока нет.  Плачущий
А пока на выходных собираюсь делать ТиИ  Нерешительный
  
Наверх
ICQ  
IP записан
 
Z1
God Member
*****
Отсутствует


I Love YaBB 2!

Сообщений: 2906
Местоположение: Москва
Зарегистрирован: 26. Мая 2006
Пол: Мужской
Re: Движения одного документа у другого
Ответ #1 - 30. Октября 2009 :: 11:37
Печать  
1 Сколько одновременно работающих пользователей ?
2 какой релиз 1с сколько документов за день есть ли какие отличия от стандартной 1с
3 какая sql2005 (sp ???) . Есть ли 3gb  wae ?
4 Как можно подробней опишите железо сервера  и какая ос, что еще крутиться на  sql сервере Также опишите структуру сети и какие протоколы используете.
  
Наверх
 
IP записан
 
Z1
God Member
*****
Отсутствует


I Love YaBB 2!

Сообщений: 2906
Местоположение: Москва
Зарегистрирован: 26. Мая 2006
Пол: Мужской
Re: Движения одного документа у другого
Ответ #2 - 30. Октября 2009 :: 11:46
Печать  
noxxx писал(а) 30. Октября 2009 :: 10:52:
4. Если с заявкой от покупателя помогало перепроведение, то с ПКО это не помогает. После перепроведения все левые движения опять появляются. От распроведения они пропадают, от проведения появляются.
/

Если в документе ПКО строка ПриЗаписиПерепроводить(1)?

Цитата:
После перепроведения все левые движения опять появляются.
Смотри отладчиком что конкретно и где появляется.



  
Наверх
 
IP записан
 
Z1
God Member
*****
Отсутствует


I Love YaBB 2!

Сообщений: 2906
Местоположение: Москва
Зарегистрирован: 26. Мая 2006
Пол: Мужской
Re: Движения одного документа у другого
Ответ #3 - 30. Октября 2009 :: 11:49
Печать  
noxxx писал(а) 30. Октября 2009 :: 10:52:
А пока на выходных собираюсь делать ТиИ  Нерешительный


А вот этого не советую.
Стандартное Исправление добъёт окончательно твою базу.
  
Наверх
 
IP записан
 
Z1
God Member
*****
Отсутствует


I Love YaBB 2!

Сообщений: 2906
Местоположение: Москва
Зарегистрирован: 26. Мая 2006
Пол: Мужской
Re: Движения одного документа у другого
Ответ #4 - 30. Октября 2009 :: 11:50
Печать  
(0) Восстанови копию полугодовой давности  прогони пункт 2
результаты огласи  здесь.
  
Наверх
 
IP записан
 
noxxx
Full Member
***
Отсутствует


1c++ rocks 8)

Сообщений: 239
Местоположение: Москва
Зарегистрирован: 24. Августа 2007
Пол: Мужской
Re: Движения одного документа у другого
Ответ #5 - 30. Октября 2009 :: 12:09
Печать  
Z1 писал(а) 30. Октября 2009 :: 11:37:
1 Сколько одновременно работающих пользователей ?
2 какой релиз 1с сколько документов за день есть ли какие отличия от стандартной 1с
3 какая sql2005 (sp ???) . Есть ли 3gb  wae ?
4 Как можно подробней опишите железо сервера  и какая ос, что еще крутиться на  sql сервере Также опишите структуру сети и какие протоколы используете.


1. В данный момент 48 пользователей

2. Платформа 27, в среднем в день 1500-2000 документов, от стандартной 1С (ПУБ) осталось мало. Т.е. написано и дописано много всего. 1С++ используется только для селектов, никаких записей в базу не делается.

3. SELECT @@verinfo: Microsoft SQL Server 2005 - 9.00.3077.00 (Intel X86)   Dec 17 2008 15:19:45   Copyright (c) 1988-2005 Microsoft Corporation  Enterprise Edition on Windows NT 5.2 (Build 3790: Service Pack 2). Не знаю что такое 3gb wae  Нерешительный

4.
Сервер:

CPU: 2 x Intel XEON 5110
Мать: Supermicro X7DVA
Память: 6GB FBDIMM DDR2
Диски: Рейд контроллер Adaptec SCSI RAID 2020ZCR, 4 винта, raid 5
ОС: Windows 2003 Server R2 + все критические обновления и обновления безопасности

На SQL сервере больше ничего не крутится, кроме самого SQL. Иногда там запускают 1С для проведения закрытия месяца. Больше ничего.

Структура сети - между серверами и компами ИТ-отдела гигабит, далее идет сотка до свитчей, в которые воткнуты клиенты. Всё находится в одной подсети. Используем всё стандартное (TCP/IP, UDP, мониторинг оборудования по SNMP).

Одолевают блокировки, юзеры часто жалуются. Помониторили SQL-сервер - загрузка проца в среднем держится на 30-40%, памяти используется 2.7 Гб.

---

В ПКО есть ПриЗаписиПерепроводить(1);
Отладчиком пока не смотрел.
  
Наверх
ICQ  
IP записан
 
noxxx
Full Member
***
Отсутствует


1c++ rocks 8)

Сообщений: 239
Местоположение: Москва
Зарегистрирован: 24. Августа 2007
Пол: Мужской
Re: Движения одного документа у другого
Ответ #6 - 30. Октября 2009 :: 12:18
Печать  
Z1 писал(а) 30. Октября 2009 :: 11:50:
(0) Восстанови копию полугодовой давности  прогони пункт 2
результаты огласи  здесь.


Сейчас сделаю.
  
Наверх
ICQ  
IP записан
 
Z1
God Member
*****
Отсутствует


I Love YaBB 2!

Сообщений: 2906
Местоположение: Москва
Зарегистрирован: 26. Мая 2006
Пол: Мужской
Re: Движения одного документа у другого
Ответ #7 - 30. Октября 2009 :: 12:44
Печать  
по пункту 4 где стоит ОС на отдельном диске или на RAID ?
Какие диски в  массиве интерфейс и скорость вращения ну и тип ?
  
Наверх
 
IP записан
 
noxxx
Full Member
***
Отсутствует


1c++ rocks 8)

Сообщений: 239
Местоположение: Москва
Зарегистрирован: 24. Августа 2007
Пол: Мужской
Re: Движения одного документа у другого
Ответ #8 - 30. Октября 2009 :: 13:15
Печать  
Z1 писал(а) 30. Октября 2009 :: 12:44:
по пункту 4 где стоит ОС на отдельном диске или на RAID ?
Какие диски в  массиве интерфейс и скорость вращения ну и тип ?


ОС стоит на RAID, на отдельном логическом диске. Про диски чуть позже, напряг админа Улыбка

ЗЫ. Только бэкап отрыли на дисках, восстанавливается.
  
Наверх
ICQ  
IP записан
 
Z1
God Member
*****
Отсутствует


I Love YaBB 2!

Сообщений: 2906
Местоположение: Москва
Зарегистрирован: 26. Мая 2006
Пол: Мужской
Re: Движения одного документа у другого
Ответ #9 - 30. Октября 2009 :: 13:25
Печать  
Т.е правильно я понимаю у Вас 4 физич диска сконфигурированы
в 1 логич диск с архитектурой RAID 5 ?

Гипертрейдинг включен выключен ?
Сколько процессоров показывает диспетчер менеджер ?

Сервер собирали сами или бренд ? Какая мощность блока питания ?
  
Наверх
 
IP записан
 
noxxx
Full Member
***
Отсутствует


1c++ rocks 8)

Сообщений: 239
Местоположение: Москва
Зарегистрирован: 24. Августа 2007
Пол: Мужской
Re: Движения одного документа у другого
Ответ #10 - 30. Октября 2009 :: 13:33
Печать  
Проверил обработкой полугодовалую копию, результаты:

Кнопка 1: Все Ок

Кнопка 2: Все Ок по всем регистрам

Кнопка 3: Все Ок по всем регистрам

Кнопка 3.1: Все Ок по всем регистрам

Кнопка 4: Все Ок по всем регистрам

Кнопка 5: См. вложение.
  

errors.txt ( 8 KB | Загрузки )
Наверх
ICQ  
IP записан
 
noxxx
Full Member
***
Отсутствует


1c++ rocks 8)

Сообщений: 239
Местоположение: Москва
Зарегистрирован: 24. Августа 2007
Пол: Мужской
Re: Движения одного документа у другого
Ответ #11 - 30. Октября 2009 :: 13:35
Печать  
Z1 писал(а) 30. Октября 2009 :: 13:25:
Т.е правильно я понимаю у Вас 4 физич диска сконфигурированы
в 1 логич диск с архитектурой RAID 5 ?

Гипертрейдинг включен выключен ?
Сколько процессоров показывает диспетчер менеджер ?

Сервер собирали сами или бренд ? Какая мощность блока питания ?


1. 4 физических диска сконфигурированы в 2 логических с архитектурой RAID 5
2. Гипертрединг включен, диспетчер показывает 4 процессора.
3. Сервер DEPO, мощность БП сейчас сказать затруднительно, т.к. физического доступа к серверу не имеем.
  
Наверх
ICQ  
IP записан
 
Z1
God Member
*****
Отсутствует


I Love YaBB 2!

Сообщений: 2906
Местоположение: Москва
Зарегистрирован: 26. Мая 2006
Пол: Мужской
Re: Движения одного документа у другого
Ответ #12 - 30. Октября 2009 :: 13:40
Печать  
выясняйте мощность блока питания.

Цитата:
1. 4 физических диска сконфигурированы в 2 логических с архитектурой RAID 5
этого не может быть в принципе
один логич диск raid 5 содержит от 3 ( и более ) физич дисков.
  
Наверх
 
IP записан
 
Z1
God Member
*****
Отсутствует


I Love YaBB 2!

Сообщений: 2906
Местоположение: Москва
Зарегистрирован: 26. Мая 2006
Пол: Мужской
Re: Движения одного документа у другого
Ответ #13 - 30. Октября 2009 :: 13:47
Печать  
Цитата:
2. Гипертрединг включен, диспетчер показывает 4 процессора.

процессор Intel XEON 5110  двухядерный.
и показывает 4 ЦП значит гипертрейдинг выключен.
  
Наверх
 
IP записан
 
noxxx
Full Member
***
Отсутствует


1c++ rocks 8)

Сообщений: 239
Местоположение: Москва
Зарегистрирован: 24. Августа 2007
Пол: Мужской
Re: Движения одного документа у другого
Ответ #14 - 30. Октября 2009 :: 13:56
Печать  
Z1 писал(а) 30. Октября 2009 :: 13:47:
Цитата:
2. Гипертрединг включен, диспетчер показывает 4 процессора.

процессор Intel XEON 5110  двухядерный.
и показывает 4 ЦП значит гипертрейдинг выключен.


Всё со слов админа, я не сильный железячник  Нерешительный
  
Наверх
ICQ  
IP записан
 
noxxx
Full Member
***
Отсутствует


1c++ rocks 8)

Сообщений: 239
Местоположение: Москва
Зарегистрирован: 24. Августа 2007
Пол: Мужской
Re: Движения одного документа у другого
Ответ #15 - 30. Октября 2009 :: 13:57
Печать  
Z1 писал(а) 30. Октября 2009 :: 13:40:
выясняйте мощность блока питания.

Цитата:
1. 4 физических диска сконфигурированы в 2 логических с архитектурой RAID 5
этого не может быть в принципе
один логич диск raid 5 содержит от 3 ( и более ) физич дисков.


Блин, 4 диска в одном массиве. На массиве два логических раздела. Я это имел ввиду.
  
Наверх
ICQ  
IP записан
 
Eprst
God Member
*****
Отсутствует



Сообщений: 3397
Зарегистрирован: 08. Октября 2007
Re: Движения одного документа у другого
Ответ #16 - 30. Октября 2009 :: 13:58
Печать  
Фига се.. 67 справочников и везде ошибки в уникальном ID...
Мот табличку ему на ходу подсунули?
..
  
Наверх
 
IP записан
 
noxxx
Full Member
***
Отсутствует


1c++ rocks 8)

Сообщений: 239
Местоположение: Москва
Зарегистрирован: 24. Августа 2007
Пол: Мужской
Re: Движения одного документа у другого
Ответ #17 - 30. Октября 2009 :: 14:01
Печать  
Eprst писал(а) 30. Октября 2009 :: 13:58:
Фига се.. 67 справочников и везде ошибки в уникальном ID...
Мот табличку ему на ходу подсунули?
..


При мне ничего такого не делали. Человек, который был до меня любил править таблички вручную. Это он считал высшим пилотажем. Так что кто его знает что там делали ...

Главный вопрос что теперь с этим со всем делать
  
Наверх
ICQ  
IP записан
 
Eprst
God Member
*****
Отсутствует



Сообщений: 3397
Зарегистрирован: 08. Октября 2007
Re: Движения одного документа у другого
Ответ #18 - 30. Октября 2009 :: 14:03
Печать  
Ну вот тебе и ответ - "прямая правка табличек"...

ЗЫ: Чего делать? Исправлять вестимо..
  
Наверх
 
IP записан
 
noxxx
Full Member
***
Отсутствует


1c++ rocks 8)

Сообщений: 239
Местоположение: Москва
Зарегистрирован: 24. Августа 2007
Пол: Мужской
Re: Движения одного документа у другого
Ответ #19 - 30. Октября 2009 :: 14:06
Печать  
Eprst писал(а) 30. Октября 2009 :: 14:03:
Ну вот тебе и ответ - "прямая правка табличек"...

ЗЫ: Чего делать? Исправлять вестимо..


Ну не факт что эту таблицу он правил. Я знаю только про таблицы регистров, и с ними мы уже справились.

То что исправлять - это понятно. Как исправлять что б ничего не поломать? Очень жду подсказок от местных Гуру  Плачущий
  
Наверх
ICQ  
IP записан
 
Z1
God Member
*****
Отсутствует


I Love YaBB 2!

Сообщений: 2906
Местоположение: Москва
Зарегистрирован: 26. Мая 2006
Пол: Мужской
Re: Движения одного документа у другого
Ответ #20 - 30. Октября 2009 :: 14:06
Печать  
noxxx писал(а) 30. Октября 2009 :: 13:56:
Z1 писал(а) 30. Октября 2009 :: 13:47:
Цитата:
2. Гипертрединг включен, диспетчер показывает 4 процессора.

процессор Intel XEON 5110  двухядерный.
и показывает 4 ЦП значит гипертрейдинг выключен.


Всё со слов админа, я не сильный железячник  Нерешительный

ну это не очень принципиально.
Принципиально по физическим дискам.
да и raid5 надо точно менять.
Также принциально мощность блока питания ( ну и наверное его качество ).
  
Наверх
 
IP записан
 
noxxx
Full Member
***
Отсутствует


1c++ rocks 8)

Сообщений: 239
Местоположение: Москва
Зарегистрирован: 24. Августа 2007
Пол: Мужской
Re: Движения одного документа у другого
Ответ #21 - 30. Октября 2009 :: 14:08
Печать  
Z1 писал(а) 30. Октября 2009 :: 14:06:
noxxx писал(а) 30. Октября 2009 :: 13:56:
Z1 писал(а) 30. Октября 2009 :: 13:47:
Цитата:
2. Гипертрединг включен, диспетчер показывает 4 процессора.

процессор Intel XEON 5110  двухядерный.
и показывает 4 ЦП значит гипертрейдинг выключен.


Всё со слов админа, я не сильный железячник  Нерешительный

ну это не очень принципиально.
Принципиально по физическим дискам.
да и raid5 надо точно менять.
Также принциально мощность блока питания ( ну и наверное его качество ).


Менять raid5 на raid10?
Физических диска точно 4. Точно SCSI. Мощность БП пока сложно сказать. Что можно поковырять что б выяснить причину бития документов?
  
Наверх
ICQ  
IP записан
 
Eprst
God Member
*****
Отсутствует



Сообщений: 3397
Зарегистрирован: 08. Октября 2007
Re: Движения одного документа у другого
Ответ #22 - 30. Октября 2009 :: 14:11
Печать  
Табличку уникальности, можешь вообще выкинуть, на сколько я помню, при записи новых объектов она восстановится сама, хотя проще пробежаться по всем объектам и максимальный ID в неё запихнуть

ЗЫ: а вот раид 5 - это зло.
  
Наверх
 
IP записан
 
Z1
God Member
*****
Отсутствует


I Love YaBB 2!

Сообщений: 2906
Местоположение: Москва
Зарегистрирован: 26. Мая 2006
Пол: Мужской
Re: Движения одного документа у другого
Ответ #23 - 30. Октября 2009 :: 14:11
Печать  
noxxx писал(а) 30. Октября 2009 :: 13:57:
Z1 писал(а) 30. Октября 2009 :: 13:40:
выясняйте мощность блока питания.

Цитата:
1. 4 физических диска сконфигурированы в 2 логических с архитектурой RAID 5
этого не может быть в принципе
один логич диск raid 5 содержит от 3 ( и более ) физич дисков.


Блин, 4 диска в одном массиве. На массиве два логических раздела. Я это имел ввиду.


т.е на сервере один логич диск из четырех физич. дисков
объедененных в RAID 5 ?
И на этом логическом диске и Операц система и база данных ?
Правильно ли я понял ?

  
Наверх
 
IP записан
 
noxxx
Full Member
***
Отсутствует


1c++ rocks 8)

Сообщений: 239
Местоположение: Москва
Зарегистрирован: 24. Августа 2007
Пол: Мужской
Re: Движения одного документа у другого
Ответ #24 - 30. Октября 2009 :: 14:13
Печать  
Z1 писал(а) 30. Октября 2009 :: 14:11:
т.е на сервере один логич диск из четырех физич. дисков
объедененных в RAID 5 ?
И на этом логическом диске и Операц система и база данных ?
Правильно ли я понял ?



Вобщем в итоге у нас на этом рэйде есть диск C:, на котором система, и диск D:, на котором БД Улыбка
  
Наверх
ICQ  
IP записан
 
Z1
God Member
*****
Отсутствует


I Love YaBB 2!

Сообщений: 2906
Местоположение: Москва
Зарегистрирован: 26. Мая 2006
Пол: Мужской
Re: Движения одного документа у другого
Ответ #25 - 30. Октября 2009 :: 14:16
Печать  
noxxx писал(а) 30. Октября 2009 :: 14:01:
Eprst писал(а) 30. Октября 2009 :: 13:58:
Фига се.. 67 справочников и везде ошибки в уникальном ID...
Мот табличку ему на ходу подсунули?
..


При мне ничего такого не делали. Человек, который был до меня любил править таблички вручную. Это он считал высшим пилотажем. Так что кто его знает что там делали ...

Главный вопрос что теперь с этим со всем делать

Давайте сначала с сервером разберемся.
Класный у Вас человек был. А если он еще и
с конкретным менеджером "дружил" ...
  
Наверх
 
IP записан
 
Z1
God Member
*****
Отсутствует


I Love YaBB 2!

Сообщений: 2906
Местоположение: Москва
Зарегистрирован: 26. Мая 2006
Пол: Мужской
Re: Движения одного документа у другого
Ответ #26 - 30. Октября 2009 :: 14:22
Печать  
Диски ( если ничего не докупать )
должны быть сконфигурированы так :
Диск 1 Операц система
Диск 2 диск только для журнала транзакций файл ldf.
Диск 3 и Диск 4 объеденены в  Raid 1 и этот логический диск для рабочей базы данных файл mdf.
  
Наверх
 
IP записан
 
noxxx
Full Member
***
Отсутствует


1c++ rocks 8)

Сообщений: 239
Местоположение: Москва
Зарегистрирован: 24. Августа 2007
Пол: Мужской
Re: Движения одного документа у другого
Ответ #27 - 30. Октября 2009 :: 14:25
Печать  
Z1 писал(а) 30. Октября 2009 :: 14:22:
Диски ( если ничего не докупать )
должны быть сконфигурированы так :
Диск 1 Операц система
Диск 2 диск только для журнала транзакций файл ldf.
Диск 3 и Диск 4 объеденены в  Raid 1 и этот логический диск для рабочей базы данных файл mdf.


А подойдет ли для журнала транзакций отдельный винт SATA?
  
Наверх
ICQ  
IP записан
 
Z1
God Member
*****
Отсутствует


I Love YaBB 2!

Сообщений: 2906
Местоположение: Москва
Зарегистрирован: 26. Мая 2006
Пол: Мужской
Re: Движения одного документа у другого
Ответ #28 - 30. Октября 2009 :: 14:30
Печать  
noxxx писал(а) 30. Октября 2009 :: 14:25:
Z1 писал(а) 30. Октября 2009 :: 14:22:
Диски ( если ничего не докупать )
должны быть сконфигурированы так :
Диск 1 Операц система
Диск 2 диск только для журнала транзакций файл ldf.
Диск 3 и Диск 4 объеденены в  Raid 1 и этот логический диск для рабочей базы данных файл mdf.


А подойдет ли для журнала транзакций отдельный винт SATA?

Не знаю. Я консервативен. Мое мнение  САТА не держит многопользовательскую нагрузку и на сервере должны быть только скази.
Время SSD (для серверов ) еще не пришло но обязательно наступит.
  
Наверх
 
IP записан
 
Z1
God Member
*****
Отсутствует


I Love YaBB 2!

Сообщений: 2906
Местоположение: Москва
Зарегистрирован: 26. Мая 2006
Пол: Мужской
Re: Движения одного документа у другого
Ответ #29 - 30. Октября 2009 :: 14:32
Печать  
В посте (0) ВЫ сказали что у Вас есть одна переф база.
В той переф базе dbf или sql.
Как настроена миграция документов , справочников ?
  
Наверх
 
IP записан
 
noxxx
Full Member
***
Отсутствует


1c++ rocks 8)

Сообщений: 239
Местоположение: Москва
Зарегистрирован: 24. Августа 2007
Пол: Мужской
Re: Движения одного документа у другого
Ответ #30 - 30. Октября 2009 :: 14:35
Печать  
Z1 писал(а) 30. Октября 2009 :: 14:32:
В посте (0) ВЫ сказали что у Вас есть одна переф база.
В той переф базе dbf или sql.
Как настроена миграция документов , справочников ?


База также sql. Софт весь тот же самый. Отличия по железу сервера только. Практически во всех объектах миграция настроена как "Место создания и центр", кроме некоторых констант, в которых должны быть значения в каждой базе свои. Обмен производится каждые 20 минут.
  
Наверх
ICQ  
IP записан
 
noxxx
Full Member
***
Отсутствует


1c++ rocks 8)

Сообщений: 239
Местоположение: Москва
Зарегистрирован: 24. Августа 2007
Пол: Мужской
Re: Движения одного документа у другого
Ответ #31 - 30. Октября 2009 :: 14:38
Печать  
По железу хочу сказать, что если необходим апгрейд, то в этом нет проблемы, если это поможет повысить быстродействие или избавить от ошибок.
  
Наверх
ICQ  
IP записан
 
Z1
God Member
*****
Отсутствует


I Love YaBB 2!

Сообщений: 2906
Местоположение: Москва
Зарегистрирован: 26. Мая 2006
Пол: Мужской
Re: Движения одного документа у другого
Ответ #32 - 30. Октября 2009 :: 14:45
Печать  
noxxx писал(а) 30. Октября 2009 :: 14:38:
По железу хочу сказать, что если необходим апгрейд, то в этом нет проблемы, если это поможет повысить быстродействие или избавить от ошибок.

Вам нужно выяснить ошибки это из-за железа или из-за того что
правили sql таблицы вручную ? или и то и другое.
Попробуйте прогнать тест ошибок регистров на  переф базе ?
  
Наверх
 
IP записан
 
noxxx
Full Member
***
Отсутствует


1c++ rocks 8)

Сообщений: 239
Местоположение: Москва
Зарегистрирован: 24. Августа 2007
Пол: Мужской
Re: Движения одного документа у другого
Ответ #33 - 30. Октября 2009 :: 14:55
Печать  
Z1 писал(а) 30. Октября 2009 :: 14:45:
Вам нужно выяснить ошибки это из-за железа или из-за того что
правили sql таблицы вручную ? или и то и другое.
Попробуйте прогнать тест ошибок регистров на  переф базе ?


По всем регистрам всё ок, проверка _1suidctl в файле. Ошибок меньше.
  

errors_per.txt ( 6 KB | Загрузки )
Наверх
ICQ  
IP записан
 
Z1
God Member
*****
Отсутствует


I Love YaBB 2!

Сообщений: 2906
Местоположение: Москва
Зарегистрирован: 26. Мая 2006
Пол: Мужской
Re: Движения одного документа у другого
Ответ #34 - 30. Октября 2009 :: 14:57
Печать  
кстати sql2005 более интелектуален нем sql 2000 по оптимизации дисковой системы. И то что у Вас сейчас стоит приводит его
в полный ступор.
Т.е. я хочу сказать что sql2005 быстрее но требует более тонкого
подбора файловой системы - если этого не сделать то sql2000
гораздо лучше.


Т.е. грубая аналогия  в хорошую машину льем  плохое масло.
Лучше тогда было купить плохую машину и лить туда плохое масло.
  
Наверх
 
IP записан
 
noxxx
Full Member
***
Отсутствует


1c++ rocks 8)

Сообщений: 239
Местоположение: Москва
Зарегистрирован: 24. Августа 2007
Пол: Мужской
Re: Движения одного документа у другого
Ответ #35 - 30. Октября 2009 :: 15:01
Печать  
Z1 писал(а) 30. Октября 2009 :: 14:57:
кстати sql2005 более интелектуален нем sql 2000 по оптимизации дисковой системы. И то что у Вас сейчас стоит приводит его
в полный ступор.
Т.е. я хочу сказать что sql2005 быстрее но требует более тонкого
подбора файловой системы - если этого не сделать то sql2000
гораздо лучше.


Т.е. грубая аналогия  в хорошую машину льем  плохое масло.
Лучше тогда было купить плохую машину и лить туда плохое масло.


Железками можно будет заняться на праздники только. До этого момента что-нибудь еще можно проверить?
  
Наверх
ICQ  
IP записан
 
Z1
God Member
*****
Отсутствует


I Love YaBB 2!

Сообщений: 2906
Местоположение: Москва
Зарегистрирован: 26. Мая 2006
Пол: Мужской
Re: Движения одного документа у другого
Ответ #36 - 30. Октября 2009 :: 15:07
Печать  
noxxx писал(а) 30. Октября 2009 :: 15:01:
Z1 писал(а) 30. Октября 2009 :: 14:57:
кстати sql2005 более интелектуален нем sql 2000 по оптимизации дисковой системы. И то что у Вас сейчас стоит приводит его
в полный ступор.
Т.е. я хочу сказать что sql2005 быстрее но требует более тонкого
подбора файловой системы - если этого не сделать то sql2000
гораздо лучше.


Т.е. грубая аналогия  в хорошую машину льем  плохое масло.
Лучше тогда было купить плохую машину и лить туда плохое масло.


Железками можно будет заняться на праздники только. До этого момента что-нибудь еще можно проверить?

это уже не совсем железяка а выбор sql.
нужно решить стоит ли upgrad Ваш сервер или купить новый.
Чтобы Вам посоветовать в этом Вопросе что либо нужна точная информация о Вашем блоке питания,
физических дисках ( кстати Вы знаете что в raid рекомендуют ставить одинаковые диски из одной партии ).
Также какая система охлаждения у Вашего сервера.
  
Наверх
 
IP записан
 
Z1
God Member
*****
Отсутствует


I Love YaBB 2!

Сообщений: 2906
Местоположение: Москва
Зарегистрирован: 26. Мая 2006
Пол: Мужской
Re: Движения одного документа у другого
Ответ #37 - 30. Октября 2009 :: 15:09
Печать  
Почему УРБД. Ведь если обмен идет каждые 20 минут
значит у Вас есть канал связи
и может рассмотреть возможность работы в терминале без УРБД ?
  
Наверх
 
IP записан
 
noxxx
Full Member
***
Отсутствует


1c++ rocks 8)

Сообщений: 239
Местоположение: Москва
Зарегистрирован: 24. Августа 2007
Пол: Мужской
Re: Движения одного документа у другого
Ответ #38 - 30. Октября 2009 :: 15:13
Печать  
Z1 писал(а) 30. Октября 2009 :: 15:09:
Почему УРБД. Ведь если обмен идет каждые 20 минут
значит у Вас есть канал связи
и может рассмотреть возможность работы в терминале ?


Да, у нас в планах пересадить людей в терминал. Но т.к. их там ~40 человек, как-то страхово пускать их на наш серверок. Сначала хотелось убедиться что он выдержит.
  
Наверх
ICQ  
IP записан
 
noxxx
Full Member
***
Отсутствует


1c++ rocks 8)

Сообщений: 239
Местоположение: Москва
Зарегистрирован: 24. Августа 2007
Пол: Мужской
Re: Движения одного документа у другого
Ответ #39 - 30. Октября 2009 :: 15:22
Печать  
По БП: Мощность 750 W
По винтам: 4 x 73.5 Gb U320SCSI Fujitsu <MAW3073NP> LVD 68pin 10000rpm 8Mb

Поехал домой, через час появлюсь.
  
Наверх
ICQ  
IP записан
 
Z1
God Member
*****
Отсутствует


I Love YaBB 2!

Сообщений: 2906
Местоположение: Москва
Зарегистрирован: 26. Мая 2006
Пол: Мужской
Re: Движения одного документа у другого
Ответ #40 - 30. Октября 2009 :: 17:15
Печать  
750 w на пределе.
смотри спецификация по твоей матери 500 w
диски 25 * 4 = 100
память даже по 10  * 6 = 60
итого запас 90 w (750 - 660)
также есть еще контролерр с памятью
и Система вентиляции.
т.е. 750 w хватает с трудом.
  
Наверх
 
IP записан
 
Z1
God Member
*****
Отсутствует


I Love YaBB 2!

Сообщений: 2906
Местоположение: Москва
Зарегистрирован: 26. Мая 2006
Пол: Мужской
Re: Движения одного документа у другого
Ответ #41 - 30. Октября 2009 :: 17:17
Печать  
Далее конролерр с памятью
а как у него настроено кеширование с обратной записью ?
Даже если и правильно настроено то вполне может сбоить
да и батарейки в нем нет а кеш есть что будет с данными при очень кратком отключении питания на самом контролере ?
  
Наверх
 
IP записан
 
Z1
God Member
*****
Отсутствует


I Love YaBB 2!

Сообщений: 2906
Местоположение: Москва
Зарегистрирован: 26. Мая 2006
Пол: Мужской
Re: Движения одного документа у другого
Ответ #42 - 30. Октября 2009 :: 17:20
Печать  
Посмотрел файл ошибок.
На вскидку нельзя( не рекомендуется)
для переф баз использовать идентефикатор из двух символов 'IV '
Должно быть только три символа. (и желательно латинские
и ид базы начинается с буквы )
  
Наверх
 
IP записан
 
Z1
God Member
*****
Отсутствует


I Love YaBB 2!

Сообщений: 2906
Местоположение: Москва
Зарегистрирован: 26. Мая 2006
Пол: Мужской
Re: Движения одного документа у другого
Ответ #43 - 30. Октября 2009 :: 17:50
Печать  
Ну и уж чтобы окончательно убедиться что
представляет из себя твой сервер прогони тесты

solio  http://www.sql.ru/subscribe/2005/273.shtml#20

SQLIOSim http://www.sql.ru/subscribe/2007/361.shtml

SQLIOStress http://support.microsoft.com/kb/234656/ru

Сам никогда не делал этого

Если будешь прогонять тесты то напиши здесь статейку(manual)
чтобы другим было легче воспользоваться.
  
Наверх
 
IP записан
 
noxxx
Full Member
***
Отсутствует


1c++ rocks 8)

Сообщений: 239
Местоположение: Москва
Зарегистрирован: 24. Августа 2007
Пол: Мужской
Re: Движения одного документа у другого
Ответ #44 - 30. Октября 2009 :: 18:26
Печать  
Z1 писал(а) 30. Октября 2009 :: 17:50:
Ну и уж чтобы окончательно убедиться что
представляет из себя твой сервер прогони тесты

solio  http://www.sql.ru/subscribe/2005/273.shtml#20

SQLIOSim http://www.sql.ru/subscribe/2007/361.shtml

SQLIOStress http://support.microsoft.com/kb/234656/ru

Сам никогда не делал этого

Если будешь прогонять тесты то напиши здесь статейку(manual)
чтобы другим было легче воспользоваться.


Спасибо большое! Тесты прогоню, всё запишу и выложу!
  
Наверх
ICQ  
IP записан
 
noxxx
Full Member
***
Отсутствует


1c++ rocks 8)

Сообщений: 239
Местоположение: Москва
Зарегистрирован: 24. Августа 2007
Пол: Мужской
Re: Движения одного документа у другого
Ответ #45 - 02. Ноября 2009 :: 07:08
Печать  
Сделал (по крайней мере попробовал сделать) тест SQLIO. Нашел очень хорошее объяснение всего этого дела по адресу http://msmvps.com/blogs/gladchenko/archive/2009/06/09/1694801.aspx
Сделал 2 теста по 4 в каждом - случайное и последовательное чтение/запись в двух размерах блоков. Размеры выбирал по табличке из той же статьи. 8 Кб, как наиболее часто используемый для данных системы OLTP и 64 Кб, как данные журнала транзакций.
Результаты во вложенном файле. Т.к. дел с серверами не имею, то и мало представляю себе какая скорость должна быть и как можно оценить ту что получилась у меня  Нерешительный
Жду ответа многоуважаемого Z1
  

drive_test.xls ( 28 KB | Загрузки )
Наверх
ICQ  
IP записан
 
Z1
God Member
*****
Отсутствует


I Love YaBB 2!

Сообщений: 2906
Местоположение: Москва
Зарегистрирован: 26. Мая 2006
Пол: Мужской
Re: Движения одного документа у другого
Ответ #46 - 02. Ноября 2009 :: 08:02
Печать  
Я написал что не тестировал ни по одной из этих схем.
Цель тестов убедиться есть ошибки  и лучше наверное пользоваться
не solio а двумя другими тестами.
Цель тестов понять сервер ошибается или нет.
Т.е. есть или нет у Вас много ошибок по железу.
Нужно ли менять Ваш сервер целиком или нет( только модифицировать файловую систему).


Также  Вы переформитировали диски под 64 Кб или там что -то другое речь об  8 Кб и 64 Кб. Делали ли Вы исправление смещения под первый блок 64 кб?

Если брать чисто теоретически то цифры больно уж хорошие - значит неправдоподобные.

Если говорить о статье
/blogs/gladchenko/archive/2009/06/09/1694801.aspx то я не согласен с ее результатати т.к все тесты там делались  без использования кеша контролера. Но все равно видно что raid1 производительнее
чем raid5 а там дисков 12, на 3,4 дисках raid1 выиграет у raid5 значительно больше.

Если применительно к 1с и sql надо смотреть сред длину очереди к логическому диску.
  
Наверх
 
IP записан
 
noxxx
Full Member
***
Отсутствует


1c++ rocks 8)

Сообщений: 239
Местоположение: Москва
Зарегистрирован: 24. Августа 2007
Пол: Мужской
Re: Движения одного документа у другого
Ответ #47 - 02. Ноября 2009 :: 08:22
Печать  
Z1 писал(а) 02. Ноября 2009 :: 08:02:
Я написал что не тестировал ни по одной из этих схем.
Цель тестов убедиться есть ошибки  и лучше наверное пользоваться
не solio а двумя другими тестами.
Цель тестов понять сервер ошибается или нет.
Т.е. есть или нет у Вас много ошибок по железу.
Нужно ли менять Ваш сервер целиком или нет( только модифицировать файловую систему).

Также  Вы переформитировали диски под 64 Кб или там что -то другое речь об  8 Кб и 64 Кб. Делали ли Вы исправление смещения под первый блок 64 кб?

Если брать чисто теоретически то цифры больно уж хорошие - значит неправдоподобные.

Если говорить о статье
/blogs/gladchenko/archive/2009/06/09/1694801.aspx то я не согласен с ее результатати т.к все тесты там делались  без использования кеша контролера. Но все равно видно что raid1 производительнее
чем raid5 а там дисков 12, на 3,4 дисках raid1 выиграет у raid5 значительно больше.

Если применительно к 1с и sql надо смотреть сред длину очереди к логическому диску.


Охохо ... Я вчера пробовал погонять SQLSim (прочитал, что оно сделано вместо SQLStress), в начале теста получил ошибку:

Код
Выбрать все
CreateFileStream Error: 0x80070032
Error Text:
Description: Unable to get disk cache info for D:\
 



Потом тест прошел без ошибок:

Код
Выбрать все
Closing file D:\sqliosim.mdx
File Attributes: Compression = No, Encryption = No, Sparse = No
Target IO Duration (ms) = 100, Running Average IO Duration (ms) = 15, Number of times IO throttled = 2974, IO request blocks = 16 Reads = 3087, Scatter Reads = 14670, Writes = 286, Gather Writes = 21813, Total IO Time (ms) = 19822101
DRIVE LEVEL: Sector size = 512, Cylinders = 26769, Media type = 0, Sectors per track = 12, Tracks per Cylinders = 63
DRIVE LEVEL: Read cache enabled = No, Write cache enabled = No
DRIVE LEVEL: Read count = 17757, Read time = 646055, Write count = 23568, Write time = 19226797, Idle time = 9017, Bytes read = 5840797696, Bytes written = 5579250688, Split IO Count = 0, Storage number = 2, Storage manager name = FTDISK
Closing file D:\sqliosim.ldx
File Attributes: Compression = No, Encryption = No, Sparse = No
Target IO Duration (ms) = 100, Running Average IO Duration (ms) = 116, Number of times IO throttled = 118, IO request blocks = 1
Reads = 0, Scatter Reads = 0, Writes = 1415, Gather Writes = 0, Total IO Time (ms) = 141449
DRIVE LEVEL: Sector size = 512, Cylinders = 26769, Media type = 0, Sectors per track = 12, Tracks per Cylinders = 63
DRIVE LEVEL: Read cache enabled = No, Write cache enabled = No
DRIVE LEVEL: Read count = 17757, Read time = 646055, Write count = 23578, Write time = 19226799, Idle time = 9022, Bytes read = 5840797696, Bytes written = 5579291648, Split IO Count = 0, Storage number = 2, Storage manager name = FTDISK
Buffer Pool: validated buffers 309170, pages 377585, discarded buffers 363156 



Но осмыслить и интерпретировать результаты пока не могу. Буду читать.
  
Наверх
ICQ  
IP записан
 
noxxx
Full Member
***
Отсутствует


1c++ rocks 8)

Сообщений: 239
Местоположение: Москва
Зарегистрирован: 24. Августа 2007
Пол: Мужской
Re: Движения одного документа у другого
Ответ #48 - 02. Ноября 2009 :: 08:28
Печать  
Z1 писал(а) 02. Ноября 2009 :: 08:02:
Также  Вы переформитировали диски под 64 Кб или там что -то другое речь об  8 Кб и 64 Кб. Делали ли Вы исправление смещения под первый блок 64 кб?
Но все равно видно что raid1 производительнее чем raid5 а там дисков 12, на 3,4 дисках raid1 выиграет у raid5 значительно больше.


Нет, диски не форматировал. Про 8 и 64 кб - это размер блоков записи/чтения при выполнении тестов. О каком смещении идет речь - понятия не имею o_O

На Raid1 мы будем переделывать ФС либо завтра, либо в среду.
  
Наверх
ICQ  
IP записан
 
leshik
1c++ donor
Отсутствует



Сообщений: 820
Местоположение: Пятигорск
Зарегистрирован: 22. Апреля 2007
Пол: Мужской
Re: Движения одного документа у другого
Ответ #49 - 02. Ноября 2009 :: 13:29
Печать  
Цитата:
На Raid1 мы будем переделывать ФС либо завтра, либо в среду.

Выровняйте сразу кластера - не пожалеете.
  
Наверх
IP записан
 
noxxx
Full Member
***
Отсутствует


1c++ rocks 8)

Сообщений: 239
Местоположение: Москва
Зарегистрирован: 24. Августа 2007
Пол: Мужской
Re: Движения одного документа у другого
Ответ #50 - 02. Ноября 2009 :: 13:49
Печать  
leshik писал(а) 02. Ноября 2009 :: 13:29:
Цитата:
На Raid1 мы будем переделывать ФС либо завтра, либо в среду.

Выровняйте сразу кластера - не пожалеете.


А какой размер кластера предпочтительней?
  
Наверх
ICQ  
IP записан
 
leshik
1c++ donor
Отсутствует



Сообщений: 820
Местоположение: Пятигорск
Зарегистрирован: 22. Апреля 2007
Пол: Мужской
Re: Движения одного документа у другого
Ответ #51 - 02. Ноября 2009 :: 16:30
Печать  
По опыту ознакомления с материалами SQL.ru предпочтительней 64К.
  
Наверх
IP записан
 
Z1
God Member
*****
Отсутствует


I Love YaBB 2!

Сообщений: 2906
Местоположение: Москва
Зарегистрирован: 26. Мая 2006
Пол: Мужской
Re: Движения одного документа у другого
Ответ #52 - 03. Ноября 2009 :: 05:57
Печать  
Цитата:
Охохо ... Я вчера пробовал погонять SQLSim (прочитал, что оно сделано вместо SQLStress), в начале теста получил ошибку
Потом ошибка повторилась или пропала.


Т.е. Вам надо как то проверить железо работает правильно или нет.
Или принять на веру что в железе нет ошибок.

  
Наверх
 
IP записан
 
Z1
God Member
*****
Отсутствует


I Love YaBB 2!

Сообщений: 2906
Местоположение: Москва
Зарегистрирован: 26. Мая 2006
Пол: Мужской
Re: Движения одного документа у другого
Ответ #53 - 03. Ноября 2009 :: 06:03
Печать  
noxxx писал(а) 02. Ноября 2009 :: 08:28:
Z1 писал(а) 02. Ноября 2009 :: 08:02:
Также  Вы переформитировали диски под 64 Кб или там что -то другое речь об  8 Кб и 64 Кб. Делали ли Вы исправление смещения под первый блок 64 кб?
Но все равно видно что raid1 производительнее чем raid5 а там дисков 12, на 3,4 дисках raid1 выиграет у raid5 значительно больше.

Нет, диски не форматировал. Про 8 и 64 кб - это размер блоков записи/чтения при выполнении тестов. О каком смещении идет речь - понятия не имею o_O

На Raid1 мы будем переделывать ФС либо завтра, либо в среду.



Размер логич блока надо ставить 64 Кб ( если Вы знаете почему надо ставить больше то совет про 64 Вам не нужен)

Речь идет об  этом - ошибке в Win200, win2003
http://www.gilev.ru/1c/hardware/RAID.html это актуально
для всего диска ( raid ) поэтому заголовок статьи пропускаем, а статью читаем.

PS
В win2008 это исправили и ничего делать в win2008 не нужно.
там размер нулевого блока равен  1МБ.


  
Наверх
 
IP записан
 
noxxx
Full Member
***
Отсутствует


1c++ rocks 8)

Сообщений: 239
Местоположение: Москва
Зарегистрирован: 24. Августа 2007
Пол: Мужской
Re: Движения одного документа у другого
Ответ #54 - 03. Ноября 2009 :: 06:32
Печать  
Z1 писал(а) 03. Ноября 2009 :: 05:57:
Цитата:
Охохо ... Я вчера пробовал погонять SQLSim (прочитал, что оно сделано вместо SQLStress), в начале теста получил ошибку
Потом ошибка повторилась или пропала.


Т.е. Вам надо как то проверить железо работает правильно или нет.
Или принять на веру что в железе нет ошибок.



Буду надеяться что ошибка связана с какими-либо системными настройками. После переустановки сервера прогоню еще раз тесты.
Спасибо за статью! О результатах бойни с сервером сообщу.
  
Наверх
ICQ  
IP записан
 
Z1
God Member
*****
Отсутствует


I Love YaBB 2!

Сообщений: 2906
Местоположение: Москва
Зарегистрирован: 26. Мая 2006
Пол: Мужской
Re: Движения одного документа у другого
Ответ #55 - 03. Ноября 2009 :: 06:38
Печать  
noxxx писал(а) 03. Ноября 2009 :: 06:32:
Z1 писал(а) 03. Ноября 2009 :: 05:57:
Цитата:
Охохо ... Я вчера пробовал погонять SQLSim (прочитал, что оно сделано вместо SQLStress), в начале теста получил ошибку
Потом ошибка повторилась или пропала.


Т.е. Вам надо как то проверить железо работает правильно или нет.
Или принять на веру что в железе нет ошибок.



Буду надеяться что ошибка связана с какими-либо системными настройками. После переустановки сервера прогоню еще раз тесты.
Спасибо за статью! О результатах бойни с сервером сообщу.

Перед установкой сервера Вы должны точно знать всю конфигурацию файловой системы т.е. иметь рисунок физического и логического
разбиения дисков и где будут работать основные элементы :
ОС, БД, журнал транзакций.
  
Наверх
 
IP записан
 
noxxx
Full Member
***
Отсутствует


1c++ rocks 8)

Сообщений: 239
Местоположение: Москва
Зарегистрирован: 24. Августа 2007
Пол: Мужской
Re: Движения одного документа у другого
Ответ #56 - 03. Ноября 2009 :: 08:15
Печать  
Z1 писал(а) 03. Ноября 2009 :: 06:38:
Перед установкой сервера Вы должны точно знать всю конфигурацию файловой системы т.е. иметь рисунок физического и логического
разбиения дисков и где будут работать основные элементы :
ОС, БД, журнал транзакций.


Будем делать так:

1 Диск - ОС
2+3 Диск  в RAID1 - БД
4 Диск - Журнал транзакций

Кстати, возник вопрос - насколько страшна для базы потеря журнала транзакций? Ведь в случае поломки диска мы теряем журнал, он же не зеркалируется никак.
  
Наверх
ICQ  
IP записан
 
Z1
God Member
*****
Отсутствует


I Love YaBB 2!

Сообщений: 2906
Местоположение: Москва
Зарегистрирован: 26. Мая 2006
Пол: Мужской
Re: Движения одного документа у другого
Ответ #57 - 03. Ноября 2009 :: 08:51
Печать  
noxxx писал(а) 03. Ноября 2009 :: 08:15:
Z1 писал(а) 03. Ноября 2009 :: 06:38:
Перед установкой сервера Вы должны точно знать всю конфигурацию файловой системы т.е. иметь рисунок физического и логического
разбиения дисков и где будут работать основные элементы :
ОС, БД, журнал транзакций.


Будем делать так:

1 Диск - ОС
2+3 Диск  в RAID1 - БД
4 Диск - Журнал транзакций

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

это зависит от recovery model. Как ее выбирать либо слишком простой либо слишком сложный вопрос.

В своих базах использую simple.

Опять же ведь у Вас урбд так и делайте обмен раз в час вот Вам и будет точно копия базы на час назад.

Ну также никто не мешает вам на журнал транзакций тоже ставить raid-1 Просто рекомендация по разбиению файловой системы была дана в предположении что Вы не будете менять диски.
Если это не так то и рекомендация неверна и возникает очень много вариантов.

  
Наверх
 
IP записан
 
noxxx
Full Member
***
Отсутствует


1c++ rocks 8)

Сообщений: 239
Местоположение: Москва
Зарегистрирован: 24. Августа 2007
Пол: Мужской
Re: Движения одного документа у другого
Ответ #58 - 03. Ноября 2009 :: 09:00
Печать  
Кстати, о recovery model. Читал, что если установить модель Simple, то база начнет шуршать быстрее, но мы рискуем при падении сервера потерять данные. Так ли это? (УРБД в расчет не брать). А так де, обмен раз в 20-40 минут, точная копия базы имеется.
  
Наверх
ICQ  
IP записан
 
Z1
God Member
*****
Отсутствует


I Love YaBB 2!

Сообщений: 2906
Местоположение: Москва
Зарегистрирован: 26. Мая 2006
Пол: Мужской
Re: Движения одного документа у другого
Ответ #59 - 03. Ноября 2009 :: 09:11
Печать  
noxxx писал(а) 03. Ноября 2009 :: 09:00:
Кстати, о recovery model. Читал, что если установить модель Simple, то база начнет шуршать быстрее, но мы рискуем при падении сервера потерять данные. Так ли это? (УРБД в расчет не брать). А так де, обмен раз в 20-40 минут, точная копия базы имеется.

ms sql сначала пишет данные в журнал транзакций потом в файлы данных.
При моделе simple в журнал транзакций пишется более сокращенный набор изменений ( по сравнению с full ) - за счет этого simple быстрее. Может еще быстрее и за счет того что при simple журнал сам усекается но не уверен влияет ли это на скорость или нет.

Расшифруйте что Вы понимаете под падением сервера - тогда
можно сказать какая модель лучше хуже. нет идеальных решений на все случаи.
( а то может у Вас сервер с пятого этажа упадет  Улыбка  )
  
Наверх
 
IP записан
 
noxxx
Full Member
***
Отсутствует


1c++ rocks 8)

Сообщений: 239
Местоположение: Москва
Зарегистрирован: 24. Августа 2007
Пол: Мужской
Re: Движения одного документа у другого
Ответ #60 - 03. Ноября 2009 :: 09:15
Печать  
Z1 писал(а) 03. Ноября 2009 :: 09:11:
ms sql сначала пишет данные в журнал транзакций потом в файлы данных.
При моделе simple в журнал транзакций пишется более сокращенный набор изменений ( по сравнению с full ) - за счет этого simple быстрее. Может еще быстрее и за счет того что при simple журнал сам усекается но не уверен влияет ли это на скорость или нет.

Расшифруйте что Вы понимаете под падением сервера - тогда
можно сказать какая модель лучше хуже. нет идеальных решений на все случаи.
( а то может у Вас сервер с пятого этажа упадет  Улыбка  )


Ну, например, случится какая-нибудь хрень с винтом, на котором журнал хранится. Это критично для базы или ей все равно, если она в рабочем состоянии?
  
Наверх
ICQ  
IP записан
 
Z1
God Member
*****
Отсутствует


I Love YaBB 2!

Сообщений: 2906
Местоположение: Москва
Зарегистрирован: 26. Мая 2006
Пол: Мужской
Re: Движения одного документа у другого
Ответ #61 - 03. Ноября 2009 :: 09:24
Печать  
noxxx писал(а) 03. Ноября 2009 :: 09:15:
Z1 писал(а) 03. Ноября 2009 :: 09:11:
ms sql сначала пишет данные в журнал транзакций потом в файлы данных.
При моделе simple в журнал транзакций пишется более сокращенный набор изменений ( по сравнению с full ) - за счет этого simple быстрее. Может еще быстрее и за счет того что при simple журнал сам усекается но не уверен влияет ли это на скорость или нет.

Расшифруйте что Вы понимаете под падением сервера - тогда
можно сказать какая модель лучше хуже. нет идеальных решений на все случаи.
( а то может у Вас сервер с пятого этажа упадет  Улыбка  )


Ну, например, случится какая-нибудь хрень с винтом, на котором журнал хранится. Это критично для базы или ей все равно, если она в рабочем состоянии?

Если физич. диск останется рабочим то возможны два варианта
1. Хрень будет вне файла ну тогда вроде некритично если весь
диск не полетит потому что nfts вроде как сама журналируется
и имеет защиту от повреждений.
2.Хрень коснется Вашего файла тогда  : sql на страницах хранит контрольные суммы. Наверное он их как-то обрабатывает.
Т.е. из плохой страницы точно ничего не восстановить без танцев с бубном, а для модели simple может эта страница отсечется и операц. система больше не будет писать в плохую область диска.

Ну а чтобы уменьшить вероятность проблем с диском или его частью и были придуманы RAID массивы.
  
Наверх
 
IP записан
 
noxxx
Full Member
***
Отсутствует


1c++ rocks 8)

Сообщений: 239
Местоположение: Москва
Зарегистрирован: 24. Августа 2007
Пол: Мужской
Re: Движения одного документа у другого
Ответ #62 - 03. Ноября 2009 :: 14:04
Печать  
Еще есть вопрос по поводу памяти, которую жрет SQL-сервер. Указали ему жестко использовать 4,5 Гб памяти. А он использует все равно только 2.7. Куда еще посмотреть?
  
Наверх
ICQ  
IP записан
 
berezdetsky
1c++ power user
Отсутствует


barba non facit sisadminum

Сообщений: 1986
Местоположение: Москва
Зарегистрирован: 19. Мая 2006
Пол: Мужской
Re: Движения одного документа у другого
Ответ #63 - 03. Ноября 2009 :: 14:12
Печать  
На x86 он больше, чем 2.7 использовать и не будет. Разве что AWE включить, но оно только для кэша будет использоваться.
  

пароль как коньяк, чем больше звездочек, тем лучше
Наверх
IP записан
 
Z1
God Member
*****
Отсутствует


I Love YaBB 2!

Сообщений: 2906
Местоположение: Москва
Зарегистрирован: 26. Мая 2006
Пол: Мужской
Re: Движения одного документа у другого
Ответ #64 - 03. Ноября 2009 :: 14:28
Печать  
noxxx писал(а) 03. Ноября 2009 :: 14:04:
Еще есть вопрос по поводу памяти, которую жрет SQL-сервер. Указали ему жестко использовать 4,5 Гб памяти. А он использует все равно только 2.7. Куда еще посмотреть?

как смотрите что 2.7 ?

И что Вы упираетесь в память.
Система любая ( не только sql ) работает со скоростью самого медленного звена - а  для ms sql  'это и есть файловая система сервера.
Ну представьте что у Вас в гипотетическом сервере оперативной памяти 100 Тб.
И прокрутите работу sql сервера когда запросы идут непрерывным потоком и запросов много и разных и очень много блокирующих.

PS
Простейший пример  Стандартные блокировки в 1c 77 под ms sql.
В начала модуля проведения я поставлю :
Предупреждение("Всем отдыхать");
Чем поможет после этого гиганская память ?
  
Наверх
 
IP записан
 
noxxx
Full Member
***
Отсутствует


1c++ rocks 8)

Сообщений: 239
Местоположение: Москва
Зарегистрирован: 24. Августа 2007
Пол: Мужской
Re: Движения одного документа у другого
Ответ #65 - 03. Ноября 2009 :: 16:09
Печать  
Насчет памяти понятно, спасибо Улыбка
Сегодня сделали конструкцию которую вы указали, выровняли сектора. Тесты прогнал, но они стали показывать меньшую скорость, что скорее всего говорит о том, что они не показательны.

Попробую прогнать sqlsim.
  
Наверх
ICQ  
IP записан
 
noxxx
Full Member
***
Отсутствует


1c++ rocks 8)

Сообщений: 239
Местоположение: Москва
Зарегистрирован: 24. Августа 2007
Пол: Мужской
Re: Движения одного документа у другого
Ответ #66 - 05. Ноября 2009 :: 06:45
Печать  
SQLSim опять поругался про кэш. Не знаю что с ним :/

Нашел. Это вовсе и не ошибка, SQLSim пытается предупредить что включен кэш, но не может понять, есть батарейка или нет. Батарейка есть, в настройках рэйда выбрана опция "Кэшировать запись только при работающей батарее".
https://blogs.msdn.com/psssql/archive/2008/01/14/sqliosim-error-request-could-no...
  
Наверх
ICQ  
IP записан
 
noxxx
Full Member
***
Отсутствует


1c++ rocks 8)

Сообщений: 239
Местоположение: Москва
Зарегистрирован: 24. Августа 2007
Пол: Мужской
Re: Движения одного документа у другого
Ответ #67 - 05. Ноября 2009 :: 10:17
Печать  
Единственный вывод, который я могу сделать после всех манипуляций с железом: хуже точно не стало Улыбка Юзера работают, ошибок в железе, скорее всего, нет. Куда копать дальше?
  
Наверх
ICQ  
IP записан
 
Z1
God Member
*****
Отсутствует


I Love YaBB 2!

Сообщений: 2906
Местоположение: Москва
Зарегистрирован: 26. Мая 2006
Пол: Мужской
Re: Движения одного документа у другого
Ответ #68 - 05. Ноября 2009 :: 10:25
Печать  
Для начала надо определиться есть насколько повлияли улучшения.
Получить какую нибудь оценку.
Ну например раньше какой то отчет выполнялся больше 5 минут сейчас меньше 3
  
Наверх
 
IP записан
 
Z1
God Member
*****
Отсутствует


I Love YaBB 2!

Сообщений: 2906
Местоположение: Москва
Зарегистрирован: 26. Мая 2006
Пол: Мужской
Re: Движения одного документа у другого
Ответ #69 - 05. Ноября 2009 :: 10:27
Печать  
noxxx писал(а) 05. Ноября 2009 :: 10:17:
Единственный вывод, который я могу сделать после всех манипуляций с железом: хуже точно не стало Улыбка Юзера работают, ошибок в железе, скорее всего, нет. Куда копать дальше?

1.Исправлять базу от того что кто-то изменял значения руками.
2.Заменить переф базу код 'iv ' на какой либо трехзначный (анг буквы)
  
Наверх
 
IP записан
 
Dimitry
YaBB Newbies
*
Отсутствует


I Love YaBB 2!

Сообщений: 9
Зарегистрирован: 21. Апреля 2008
Re: Движения одного документа у другого
Ответ #70 - 05. Ноября 2009 :: 11:50
Печать  
Если не секрет Улыбка почему нельзя использовать двух символьные идентификаторы для баз УРБД?
  
Наверх
 
IP записан
 
Z1
God Member
*****
Отсутствует


I Love YaBB 2!

Сообщений: 2906
Местоположение: Москва
Зарегистрирован: 26. Мая 2006
Пол: Мужской
Re: Движения одного документа у другого
Ответ #71 - 05. Ноября 2009 :: 12:04
Печать  
Dimitry писал(а) 05. Ноября 2009 :: 11:50:
Если не секрет Улыбка почему нельзя использовать двух символьные идентификаторы для баз УРБД?

Не секрет потому что 1с для sql версии использует явные  и неявные преобразования между типами
varchar(9) char(9)
и это может может привести к ошибке( в ранних релизах точно приводило) или наткнуться из-за этого еще никем не найденные
ошибку ? зачем когда гораздо легче избежать ее( солому подложить)

Вы сами в своих прямых запросах тоже можете ошибиться и после этого такую ошибку будет ой как нелегко обнаружить.

PS грубый пример
Код
Выбрать все
ТЗ = СоздатьОбъект("ТаблицаЗначений");
ТЗ.НоваяКолонка("СтрДок","Строка");
Запрос = СоздатьОбъект("ODBCRecordSet");
ТекстЗапроса = "
|SELECT top 10
|  Жур.IDDoc
|FROM
|  _1SJourn Жур (nolock)
|";
Запрос.ВыполнитьИнструкцию(ТекстЗапроса,ТЗ,0);
 


Строки в ТЗ могут получиться как 8 символьные ( если iddoc содержит последний пробел)  так и 9 символьные.

  
Наверх
 
IP записан
 
noxxx
Full Member
***
Отсутствует


1c++ rocks 8)

Сообщений: 239
Местоположение: Москва
Зарегистрирован: 24. Августа 2007
Пол: Мужской
Re: Движения одного документа у другого
Ответ #72 - 05. Ноября 2009 :: 12:27
Печать  
Z1 писал(а) 05. Ноября 2009 :: 10:25:
Для начала надо определиться есть насколько повлияли улучшения.
Получить какую нибудь оценку.
Ну например раньше какой то отчет выполнялся больше 5 минут сейчас меньше 3


Опросил пользователей, говорят что стало меньше блокировок и в целом система стала отзывчивее. Таких показателей как "формировалось за 5, а теперь за 3" взять неоткуда, попробую подумать Улыбка

А код периферийной базы без перевыгрузки и пересоздания базы можно сделать или не стоит?
  
Наверх
ICQ  
IP записан
 
Z1
God Member
*****
Отсутствует


I Love YaBB 2!

Сообщений: 2906
Местоположение: Москва
Зарегистрирован: 26. Мая 2006
Пол: Мужской
Re: Движения одного документа у другого
Ответ #73 - 05. Ноября 2009 :: 12:35
Печать  
noxxx писал(а) 05. Ноября 2009 :: 12:27:
Z1 писал(а) 05. Ноября 2009 :: 10:25:
Для начала надо определиться есть насколько повлияли улучшения.
Получить какую нибудь оценку.
Ну например раньше какой то отчет выполнялся больше 5 минут сейчас меньше 3


Опросил пользователей, говорят что стало меньше блокировок и в целом система стала отзывчивее. Таких показателей как "формировалось за 5, а теперь за 3" взять неоткуда, попробую подумать Улыбка

А код периферийной базы без перевыгрузки и пересоздания базы можно сделать или не стоит?

Можно. Меняешь коды когда никто в обеих базах не работает.
Стоит менять или нет решай сам.
  
Наверх
 
IP записан
 
noxxx
Full Member
***
Отсутствует


1c++ rocks 8)

Сообщений: 239
Местоположение: Москва
Зарегистрирован: 24. Августа 2007
Пол: Мужской
Re: Движения одного документа у другого
Ответ #74 - 05. Ноября 2009 :: 14:38
Печать  
Z1 писал(а) 05. Ноября 2009 :: 12:35:
noxxx писал(а) 05. Ноября 2009 :: 12:27:
Z1 писал(а) 05. Ноября 2009 :: 10:25:
Для начала надо определиться есть насколько повлияли улучшения.
Получить какую нибудь оценку.
Ну например раньше какой то отчет выполнялся больше 5 минут сейчас меньше 3


Опросил пользователей, говорят что стало меньше блокировок и в целом система стала отзывчивее. Таких показателей как "формировалось за 5, а теперь за 3" взять неоткуда, попробую подумать Улыбка

А код периферийной базы без перевыгрузки и пересоздания базы можно сделать или не стоит?

Можно. Меняешь коды когда никто в обеих базах не работает.
Стоит менять или нет решай сам.


Поменяю, спасибо.
А что делать с документом, у которого левые движения появляются?
  
Наверх
ICQ  
IP записан
 
Z1
God Member
*****
Отсутствует


I Love YaBB 2!

Сообщений: 2906
Местоположение: Москва
Зарегистрирован: 26. Мая 2006
Пол: Мужской
Re: Движения одного документа у другого
Ответ #75 - 05. Ноября 2009 :: 15:51
Печать  
noxxx писал(а) 05. Ноября 2009 :: 14:38:
Z1 писал(а) 05. Ноября 2009 :: 12:35:
noxxx писал(а) 05. Ноября 2009 :: 12:27:
Z1 писал(а) 05. Ноября 2009 :: 10:25:
Для начала надо определиться есть насколько повлияли улучшения.
Получить какую нибудь оценку.
Ну например раньше какой то отчет выполнялся больше 5 минут сейчас меньше 3


Опросил пользователей, говорят что стало меньше блокировок и в целом система стала отзывчивее. Таких показателей как "формировалось за 5, а теперь за 3" взять неоткуда, попробую подумать Улыбка

А код периферийной базы без перевыгрузки и пересоздания базы можно сделать или не стоит?

Можно. Меняешь коды когда никто в обеих базах не работает.
Стоит менять или нет решай сам.


Поменяю, спасибо.
А что делать с документом, у которого левые движения появляются?

Все старые исправить а новых ошибок не должно возникать.
разбираться почему появляются.
У всех не появляются у Вас появляется.
Вы что хотите сказать что sql сервер сам придумывает какие-то движения (и даже записывает их по нескольким таблицам) ?
  
Наверх
 
IP записан
 
noxxx
Full Member
***
Отсутствует


1c++ rocks 8)

Сообщений: 239
Местоположение: Москва
Зарегистрирован: 24. Августа 2007
Пол: Мужской
Re: Движения одного документа у другого
Ответ #76 - 06. Ноября 2009 :: 09:39
Печать  
Z1 писал(а) 05. Ноября 2009 :: 15:51:
Все старые исправить а новых ошибок не должно возникать.
разбираться почему появляются.
У всех не появляются у Вас появляется.
Вы что хотите сказать что sql сервер сам придумывает какие-то движения (и даже записывает их по нескольким таблицам) ?

Я не хочу сказать что sql-сервер придумывает. По каким-то причинам 1С рвет крышу и у документа "Приходный ордер (расчеты)" появляются движения, которых у него быть не может. Я уже построчно прошел всю процедуру проведения и нет там ни одной строки про регистр "Отказы", а движение по этому регистру есть. Откуда они браться могут - ума не приложу Печаль
  
Наверх
ICQ  
IP записан
 
Z1
God Member
*****
Отсутствует


I Love YaBB 2!

Сообщений: 2906
Местоположение: Москва
Зарегистрирован: 26. Мая 2006
Пол: Мужской
Re: Движения одного документа у другого
Ответ #77 - 06. Ноября 2009 :: 09:44
Печать  
noxxx писал(а) 06. Ноября 2009 :: 09:39:
Z1 писал(а) 05. Ноября 2009 :: 15:51:
Все старые исправить а новых ошибок не должно возникать.
разбираться почему появляются.
У всех не появляются у Вас появляется.
Вы что хотите сказать что sql сервер сам придумывает какие-то движения (и даже записывает их по нескольким таблицам) ?

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

Может документ пришел из переф базы и там были созданы именно такие движения.
Сделай документ непроведенным. Снова проведи.
Появились или нет "левые" движения ?
  
Наверх
 
IP записан
 
noxxx
Full Member
***
Отсутствует


1c++ rocks 8)

Сообщений: 239
Местоположение: Москва
Зарегистрирован: 24. Августа 2007
Пол: Мужской
Re: Движения одного документа у другого
Ответ #78 - 06. Ноября 2009 :: 09:52
Печать  
Z1 писал(а) 06. Ноября 2009 :: 09:44:
noxxx писал(а) 06. Ноября 2009 :: 09:39:
Z1 писал(а) 05. Ноября 2009 :: 15:51:
Все старые исправить а новых ошибок не должно возникать.
разбираться почему появляются.
У всех не появляются у Вас появляется.
Вы что хотите сказать что sql сервер сам придумывает какие-то движения (и даже записывает их по нескольким таблицам) ?

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

Может документ пришел из переф базы и там были созданы именно такие движения.
Сделай документ непроведенным. Снова проведи.
Появились или нет "левые" движения ?


Да, при перепроведении, при распроведении-проведении появляются такие движения.

Насчет периф. базы ужас что творится - там у документа нет "левых" движений и при перепроведении они не появляются. Документ был создан в центральной базе и ушел в периферийную. Здесь движения корявые, там нормальные  Озадачен
  
Наверх
ICQ  
IP записан
 
Z1
God Member
*****
Отсутствует


I Love YaBB 2!

Сообщений: 2906
Местоположение: Москва
Зарегистрирован: 26. Мая 2006
Пол: Мужской
Re: Движения одного документа у другого
Ответ #79 - 06. Ноября 2009 :: 10:10
Печать  
Ветку не хочется всю перечитывать.
У тебя вроде базы одинаковые я имею ввиду параметры миграции
e документов справочников регистров констант какие ?
  
Наверх
 
IP записан
 
Z1
God Member
*****
Отсутствует


I Love YaBB 2!

Сообщений: 2906
Местоположение: Москва
Зарегистрирован: 26. Мая 2006
Пол: Мужской
Re: Движения одного документа у другого
Ответ #80 - 06. Ноября 2009 :: 10:11
Печать  
Переф базу никто руками не редактировал (напрямую таблицы sql) ?
  
Наверх
 
IP записан
 
noxxx
Full Member
***
Отсутствует


1c++ rocks 8)

Сообщений: 239
Местоположение: Москва
Зарегистрирован: 24. Августа 2007
Пол: Мужской
Re: Движения одного документа у другого
Ответ #81 - 06. Ноября 2009 :: 10:13
Печать  
Z1 писал(а) 06. Ноября 2009 :: 10:10:
Ветку не хочется всю перечитывать.
У тебя вроде базы одинаковые я имею ввиду параметры миграции
e документов справочников регистров констант какие ?


Место создания и центр, кроме нескольких констант. Ни на одном регистре не стоит галочка "запретить миграцию движений".
  
Наверх
ICQ  
IP записан
 
noxxx
Full Member
***
Отсутствует


1c++ rocks 8)

Сообщений: 239
Местоположение: Москва
Зарегистрирован: 24. Августа 2007
Пол: Мужской
Re: Движения одного документа у другого
Ответ #82 - 06. Ноября 2009 :: 10:15
Печать  
Z1 писал(а) 06. Ноября 2009 :: 10:11:
Переф базу никто руками не редактировал (напрямую таблицы sql) ?

Периф. база была пересоздана около 2 месяцев назад выгрузкой из центральной. Т.ч. у неё все те же глюки должны быть что и у центральной. Но это не так. Руками после этого её никто не трогал.
  
Наверх
ICQ  
IP записан
 
Z1
God Member
*****
Отсутствует


I Love YaBB 2!

Сообщений: 2906
Местоположение: Москва
Зарегистрирован: 26. Мая 2006
Пол: Мужской
Re: Движения одного документа у другого
Ответ #83 - 06. Ноября 2009 :: 10:21
Печать  
Мое мнение.
1. На выходных сделай полный обмен.

2. делаешь копии всего и sql и каталогов баз ( центральная + переф базы).

3.
В переф базе отмени распределеность.
Далее из нее делаешь Центральную распределенную
( с трехзнач кодом ). Создаешь на том же компьютере новую переф базу ( тоже с трехзначным кодом) после этого делаешь несколько обменов
Далее переносишь централ базу на кокой либо носитель и
разбираемся с сервером где центральная : текущую базу удаляем
с носителя востанавливаем.
  
Наверх
 
IP записан
 
noxxx
Full Member
***
Отсутствует


1c++ rocks 8)

Сообщений: 239
Местоположение: Москва
Зарегистрирован: 24. Августа 2007
Пол: Мужской
Re: Движения одного документа у другого
Ответ #84 - 06. Ноября 2009 :: 10:30
Печать  
Z1 писал(а) 06. Ноября 2009 :: 10:21:
Мое мнение.
1. На выходных сделай полный обмен.

2. делаешь копии всего и sql и каталогов баз ( центральная + переф базы).

3.
В переф базе отмени распределеность.
Далее из нее делаешь Центральную распределенную
( с трехзнач кодом ). Создаешь на том же компьютере новую переф базу ( тоже с трехзначным кодом) после этого делаешь несколько обменов
Далее переносишь централ базу на кокой либо носитель и
разбираемся с сервером где центральная : текущую базу удаляем
с носителя востанавливаем.

А мы потом не получим никаких глюков из-за такой конвертации? Мне уже всё страшно Улыбка
  
Наверх
ICQ  
IP записан
 
Z1
God Member
*****
Отсутствует


I Love YaBB 2!

Сообщений: 2906
Местоположение: Москва
Зарегистрирован: 26. Мая 2006
Пол: Мужской
Re: Движения одного документа у другого
Ответ #85 - 06. Ноября 2009 :: 10:38
Печать  
Ну сам посуди.
Что у тебя сейчас с базой непонятно.Там из-за некоректных действий что-то нарушено. Найти все что там нарушено либо нереально либо надо очень много времени.
В твоем случае легче из переф базы все перевостановить.
Ну также перед выполнением этой операции можешь проверить какие либо показатели.
Остатки на складах.Взаиморасчеты по важным клиентам.и.т.д.
Опять же у тебя останутся копии и можешь их развернуть на вспомагательном сервере(псевдосервере)

Также можешь потренироваться и сначала все предложенное сделать.как бы на копии и убедиться что все работает.

Ну и конечно такие координальные действия нужно делать через руководство чтобы оно знало что ты исправляешь "недоделки"
предшественников.

Тем более сам говоришь база стала лучше работать т.е. у тебя уже есть положительные результаты  Улыбка
  
Наверх
 
IP записан
 
noxxx
Full Member
***
Отсутствует


1c++ rocks 8)

Сообщений: 239
Местоположение: Москва
Зарегистрирован: 24. Августа 2007
Пол: Мужской
Re: Движения одного документа у другого
Ответ #86 - 06. Ноября 2009 :: 10:44
Печать  
Z1 писал(а) 06. Ноября 2009 :: 10:38:
Ну сам посуди.
Что у тебя сейчас с базой непонятно.Там из-за некоректных действий что-то нарушено. Найти все что там нарушено либо нереально либо надо очень много времени.
В твоем случае легче из переф базы все перевостановить.
Ну также перед выполнением этой операции можешь проверить какие либо показатели.
Остатки на складах.Взаиморасчеты по важным клиентам.и.т.д.
Опять же у тебя останутся копии и можешь их развернуть на вспомагательном сервере(псевдосервере)
Также можешь потренироваться и сначала все предложенное сделать.как бы на копии и убедиться что все работает.
Ну и конечно такие координальные действия нужно делать через руководство чтобы оно знало что ты исправляешь "недоделки"
предшественников.
Тем более сам говоришь база стала лучше работать т.е. у тебя уже есть положительные результаты  Улыбка


Я уже напряг финотдел сверять остатки между базами, сделаю копию периферийной базы, и начну с ней делать это всё. При удачном исходе на следующих выходных сделаю это всё на рабочей.
Если будут возникать вопросы - буду задавать Улыбка
  
Наверх
ICQ  
IP записан
 
Noy
Junior Member
**
Отсутствует


1C++ rocks!

Сообщений: 41
Зарегистрирован: 07. Ноября 2009
Re: Движения одного документа у другого
Ответ #87 - 07. Ноября 2009 :: 11:59
Печать  
Что-то вы не туда пошли - сервера, УРБД, бекапы....

Для начало нужно определится что за глюк -  "железный" или "софтовый". Судя по топику глюк выражается в том, что в определенном файле (или группе файлов) мы имеем записи, которые там быть не должны. Когда происходят проблемы при записи на диск, связанные с железом, то обычно вместо необходимых записей мы получаем "мусор" - набор символов, не несущий информации. В нашем же случае мы имеем структурированную информацию, которая полностью отвечает всем необходимым параметрам. Тоесть с точки зрения железа - все правильно, никаких нарушений. Неправильность видится со стороны софта - согласно бизнес-логики программы - в регистре этих "правильных" данных быть не должно. В результате этого коротко анализа можно с большой долей вероятности забыть про сервера/винты/память и прочее.
Давай-те лучше рассмотрим подробнее софт:
На мисте (ссылка из первого поста) Ёпрст давал ссылку на описание таблиц 1С - вот с их изучения и надо было начать - там видно логику работы 1С с таблицами БД - как взаимосвязаны регистры и документы и тп.
Теперь попробую описать действия 1С при проведении и отмене проведения документа (рассмотрю только регистры).
При проведении документа 1С добавляет в регистры записи, которые в качестве указателя на документ имеют поле IDDOC (такой же как у нашего документа в 1SJourn). Логично предположить, что если мы вручную в регистр добавим запись с любым движением и IDDOC равным нашему документу, то в режиме 1С у этого документа добавится еще одно движение. Но при перепроведении документа эта запись удалится. Объясняется это тем, что 1С (в случае установленной галки автоматическое удаление движений) при начале проводки выбирает все движения документа в регистрах и "чикает" их, а потом записывает новые движения.
Теперь объясню как "происходит" глюк у автора:
Во-первых: глюк произошел только один раз - в момент "одновременной" проводки проблемных документов. Проверяется легко: снимаешь с проводки свой ПКО, а затем выбираешь движения этого документа с помощью такого кода
Рег=СоздатьОбъект("РегистрПоКоторомуВисятЛевыеДвижения");
Рег.ВыбратьДвиженияДокумента("НашПКО");
Пока Рег.ПолучитьДвижение()=1 Цикл
Сообщить("есть движения по регистру!");
КонецЦикла;
То-есть "мусор" в регистре уже лежит, причем давно - проводка и удаление документа ничего не меняет.
Объясняется все это очень просто:
в журнале документов 1SJourn, есть специальные поля на каждый из регистров - при проведении в них ставится флаг, что документ имеет движения по определенному регистру. Сделано это затем (ИМХО), что бы при удалении движений документа (снятие с проводки) не сканировать все регистры на предмет наличия движений,  а только те, в которые писали при проведении.
Так вот в твоем случае документ ПКО имеет движения по регистру, который не отмечен в 1SJourn - соответственно при удалении дока эти движения и не удаляются.
Последствия лечить довольно легко:
1) удалить лишние движения (я давал пример кода на мисте)
2) поставить нужную галку в 1SJourn и перепровести документ (сам не пробовал, но в теории сработает)
3) ТИИ - долго, но надежно (не надо кричать, что ТИИ побьет базу - в подавляющем большинстве базу бьют "сверхумные" админы)

Причина глюка:
Точно не скажу причину (не хватает мне опыта для подобных исследований), но умные люди подсказали несколько очень правдоподных вариантов forum.mista.ru/topic.php?id=391827



Сорри за длинный текст.

ЗЫ если я оказался в чем-то не прав - обязательно поправьте.
  
Наверх
 
IP записан
 
Z1
God Member
*****
Отсутствует


I Love YaBB 2!

Сообщений: 2906
Местоположение: Москва
Зарегистрирован: 26. Мая 2006
Пол: Мужской
Re: Движения одного документа у другого
Ответ #88 - 07. Ноября 2009 :: 12:24
Печать  
Цитата:
Что-то вы не туда пошли - сервера, УРБД, бекапы....

У автора на на sql сервере был всего логич. диск на raid-5
Это надо исправлять в любом случае ( не говорим о длинных полках где может это и оправдано)
Далее по железу мне не очень нравиться контролер из того что я нашел в интернете (но это не должно влиять) ИХМО не должно быть вообще кешированных контролеров без батарейки.

  
Наверх
 
IP записан
 
Z1
God Member
*****
Отсутствует


I Love YaBB 2!

Сообщений: 2906
Местоположение: Москва
Зарегистрирован: 26. Мая 2006
Пол: Мужской
Re: Движения одного документа у другого
Ответ #89 - 07. Ноября 2009 :: 12:32
Печать  
Автор пишет появляются левые движения ( заметьте не итоги  а движения )

Цитата:
После перепроведения все левые движения опять появляются.
От распроведения они пропадают, от проведения появляются.

При отмене проведения все движения документа из таблицы ra удаляются. удаляются командой sql delete .
Если эти движения остаются в ra это говорит о диком нарушении индексации в sql. Такого я еще ни разу не встечал. ( в dbf
были проблемы с индексами).
При отмене проведения флаги rf... - сбрасываются 1с программой.

Когда есть несоответсвие полей rf c движениями ra (речь о конкретном документе)  то в УРБД при обмене 1с падает по duplicate key . У автора этого не происходит.


Базу "правили" руками. Что там могли сделать и сколько нужно времени чтобы  это исправить.
Откуда известно что только регистры изменили ?

Смотри есть две базы которые должны быть идентичны а этого нет.
В одной есть ошибки в другой нет.
Мое мнение легче заново создать(пересоздать) УРБД чeм искать баги в базе после ручного редактирования.

Цитата:
но умные люди подсказали несколько очень правдоподных вариантов forum.mista.ru/topic.php?id=391827
не нашел ни одного варианта решения в этой ветке одни только предположения. Может назовешь конструктивное предложение из этой ветки ?
  
Наверх
 
IP записан
 
Noy
Junior Member
**
Отсутствует


1C++ rocks!

Сообщений: 41
Зарегистрирован: 07. Ноября 2009
Re: Движения одного документа у другого
Ответ #90 - 07. Ноября 2009 :: 13:16
Печать  
Z1 писал(а) 07. Ноября 2009 :: 12:32:
Автор пишет появляются левые движения ( заметьте не итоги  а движения )

Цитата:
После перепроведения все левые движения опять появляются.
От распроведения они пропадают, от проведения появляются.

При отмене проведения все движения документа из таблицы ra удаляются. удаляются командой sql delete .
Если эти движения остаются в ra это говорит о диком нарушении индексации в sql. Такого я еще ни разу не встечал. ( в dbf
были проблемы с индексами).
При отмене проведения флаги rf... - сбрасываются 1с программой.

Когда есть несоответсвие полей rf c движениями ra (речь о конкретном документе)  то в УРБД при обмене 1с падает по duplicate key . У автора этого не происходит.


Базу "правили" руками. Что там могли сделать и сколько нужно времени чтобы  это исправить.
Откуда известно что только регистры изменили ?

Смотри есть две базы которые должны быть идентичны а этого нет.
В одной есть ошибки в другой нет.
Мое мнение легче заново создать(пересоздать) УРБД чeм искать баги в базе после ручного редактирования.

Цитата:
но умные люди подсказали несколько очень правдоподных вариантов forum.mista.ru/topic.php?id=391827
не нашел ни одного варианта решения в этой ветке одни только предположения. Может назовешь конструктивное предложение из этой ветки ?


Не совсем понял, что ты имеешь ввиду...
во вложении тестовая база с двумя документами Новый1 и Новый11 и одноименными регистрами. Пометь на удаление документ Новый1 и посмотри движения (в журнале кнопка). Заметь, что индексов я не выкладываю - сами создадутся...

По поводу ветки - смотри мой пост - эта ветка относится к пункту "Причины". Решение (последствий, а не причины) я предложил чуть выше

А по поводу железа - это вообще как религиозный спор. Если собрать трех разных админов - у каждого будет свое мнение. Да и железо тут не при делах
  

Gluk.zip ( 10 KB | Загрузки )
Наверх
 
IP записан
 
Z1
God Member
*****
Отсутствует


I Love YaBB 2!

Сообщений: 2906
Местоположение: Москва
Зарегистрирован: 26. Мая 2006
Пол: Мужской
Re: Движения одного документа у другого
Ответ #91 - 07. Ноября 2009 :: 13:42
Печать  
Речь о тестовой базе
у тебя ошибка в написании кнопки
     Рег.ВыбратьДвиженияДокумента(ТекущийДокумент);
надо передавать
Док.ТекущийЭлемент() где Док = СоздатьОбъект("Документ");


Если написать на форме журнала еще одну конпку
Код
Выбрать все
Процедура Движения1()
	Рег=СоздатьОбъект("Регистр.Новый1");
	Рег.ВыбратьДвижения();
	Пока Рег.ПолучитьДвижение()=1 Цикл
		Сообщить("Есть движение по регистру Новый1");
	КонецЦикла;
	Рег=СоздатьОбъект("Регистр.Новый11");
	Рег.ВыбратьДвижения();
	Пока Рег.ПолучитьДвижение()=1 Цикл
		Сообщить("Есть движение по регистру Новый11");
	КонецЦикла;
КонецПроцедуры 

То результат равен ( после пометки на удаление)
Цитата:
Есть движение по регистру Новый11



это также подтверждается что посмотрел в ra15.dbf нет записей
в ra18.dbf есть одна запись.
Смотрел Excel т.к. на компе даже нет уже вьювера dbf.

  
Наверх
 
IP записан
 
Noy
Junior Member
**
Отсутствует


1C++ rocks!

Сообщений: 41
Зарегистрирован: 07. Ноября 2009
Re: Движения одного документа у другого
Ответ #92 - 07. Ноября 2009 :: 13:50
Печать  
Ошибки в коде нет - я смотрю движения одного документа.
В той базе что я выложил есть два проведенных документа, которые по коду делают по одному движению и 3 движения регистров.
Я так понимаю, что ты снял с проводки оба документа и проверил ra18? Правильно? Это и сеть глюк - проведенных доков нет, движения есть.
  
Наверх
 
IP записан
 
Z1
God Member
*****
Отсутствует


I Love YaBB 2!

Сообщений: 2906
Местоположение: Москва
Зарегистрирован: 26. Мая 2006
Пол: Мужской
Re: Движения одного документа у другого
Ответ #93 - 07. Ноября 2009 :: 13:55
Печать  
Noy писал(а) 07. Ноября 2009 :: 13:50:
Ошибки в коде нет - я смотрю движения одного документа.
В той базе что я выложил есть два проведенных документа, которые по коду делают по одному движению и 3 движения регистров.
Я так понимаю, что ты снял с проводки оба документа и проверил ra18? Правильно? Это и сеть глюк - проведенных доков нет, движения есть.

А теперь сново Новый1 проведи. И пометь на удаление.
После этого Все правильно работает все востановилось.
А у автора не востанавливается.

Также начиная с пустой базы покажи как ты добился такой ситуации как в приведенном архиве ( без ручной правки dbf  файлов)


  
Наверх
 
IP записан
 
Z1
God Member
*****
Отсутствует


I Love YaBB 2!

Сообщений: 2906
Местоположение: Москва
Зарегистрирован: 26. Мая 2006
Пол: Мужской
Re: Движения одного документа у другого
Ответ #94 - 07. Ноября 2009 :: 13:56
Печать  
(off) С праздником всех
  
Наверх
 
IP записан
 
Noy
Junior Member
**
Отсутствует


1C++ rocks!

Сообщений: 41
Зарегистрирован: 07. Ноября 2009
Re: Движения одного документа у другого
Ответ #95 - 07. Ноября 2009 :: 14:00
Печать  
Z1 писал(а) 07. Ноября 2009 :: 13:55:
А теперь сново Новый1 проведи. И пометь на удаление.
После этого Все правильно работает все востановилось.
А у автора не востанавливается.

Также начиная с пустой базы покажи как ты добился такой ситуации как в приведенном архиве ( без ручной правки dbf  файлов)




У меня не восстанавливается - провожу,потом снимаю, потом опять провожу - у документа Новый1 два дижения в проведенном состояние и одно движение в непроведенном. Релиз 25SQL, база DBF

Да, в данном случае я вручную имитировал глюк
  
Наверх
 
IP записан
 
Z1
God Member
*****
Отсутствует


I Love YaBB 2!

Сообщений: 2906
Местоположение: Москва
Зарегистрирован: 26. Мая 2006
Пол: Мужской
Re: Движения одного документа у другого
Ответ #96 - 09. Ноября 2009 :: 05:58
Печать  
Цитата:
А по поводу железа - это вообще как религиозный спор. Если собрать трех разных админов - у каждого будет свое мнение. Да и железо тут не при делах

Как железо не при делах.
Автору было предложено заменить  Raid5  ( речь о трех физич дисках)
на Raid1 и отдельный диск. Это для sql сервера 1с всегда повысит производительность.
  
Наверх
 
IP записан
 
Z1
God Member
*****
Отсутствует


I Love YaBB 2!

Сообщений: 2906
Местоположение: Москва
Зарегистрирован: 26. Мая 2006
Пол: Мужской
Re: Движения одного документа у другого
Ответ #97 - 09. Ноября 2009 :: 06:06
Печать  
Еще раз проверил базу dbf да в ней глюк "остается"
просто в субботу невнимательно проверил.


Цитата:
Да, в данном случае я вручную имитировал глюк

Если взять Ваш архив восстановить базу dbf.В ней ошибка воспроизводиться. Базу переносим в sql ошибки нет.
Так что есть способ избавиться от таких "ошибок" гораздо проще
выгрузить загрузить базу.

  
Наверх
 
IP записан
 
Z1
God Member
*****
Отсутствует


I Love YaBB 2!

Сообщений: 2906
Местоположение: Москва
Зарегистрирован: 26. Мая 2006
Пол: Мужской
Re: Движения одного документа у другого
Ответ #98 - 09. Ноября 2009 :: 06:17
Печать  
Далее Вы утверждаете что sql сервер избирательно портит только часть данных ( флаги rf  таблицы _1sjourn) - Вы сами в это верите? прямо не железяка а монстр вредитель.

К подобным ситуациям может  проводить следущее
когда записать и проводить делается в разных транзакциях
и sql сервер транзакцию провести откатывает назад тогда получается
что документ выглядит как новый но при этом имеет старые движения. Но у автора этого не может быть т.к.
у него ( по его ктверждению) есть ПриЗаписиПерепроводить(1)
а значит ЗАписать Провести выполняются всегда в одной транзакции.
  
Наверх
 
IP записан
 
Z1
God Member
*****
Отсутствует


I Love YaBB 2!

Сообщений: 2906
Местоположение: Москва
Зарегистрирован: 26. Мая 2006
Пол: Мужской
Re: Движения одного документа у другого
Ответ #99 - 09. Ноября 2009 :: 06:28
Печать  
Далее есть две базы в одной есть ошибки в другой нет.
это значит что при возникновении ошибок на документы не был выставлен флаг переносить в другую базу.Т.е. данные в разных
переф базах у нас уже расходятся
значит по любому надо исправлять следующее
1.  ошибка "перепроведения ПКО"
2.  синхронизация распределенной базы

Я предложил на мой взгляд более короткий путь пересоздать
всю базу оттуда где нет ошибки.
  
Наверх
 
IP записан
 
Noy
Junior Member
**
Отсутствует


1C++ rocks!

Сообщений: 41
Зарегистрирован: 07. Ноября 2009
Re: Движения одного документа у другого
Ответ #100 - 09. Ноября 2009 :: 08:19
Печать  
Попробую по порядку все прокомментировать:
По поводу рейдов я бы рекомендовал Рейд10 как наиболее скоростной и при этом надежный. Но это ИМХО.

Да, выгрузить/загрузить базу решает проблему (также как и ТИИ). Есть один ньюанс - при размере базы в 13.5ГБ это врядли получится (без использования патча от Ромикса) и времени это займет... как минимум выходные.
По поводу УРБД: судя из первого поста проблема в Центральной базе - зачем пересоздавать перефирию??? Или ты предлагаешь из ПБ делать ЦБ?

Я нигде не утверждал что SQL-сервер избирательно портит данные, более того - я уверен что SQL-сервер отрабатывает на все 100% и ничего не портит. Я считаю что виноват движок 1С, который при проведении документа цепляет IDDOC другого документа, который также в этот момент проводится. Эти левые движения не будут переносится в ПБ, потому что по логике 1С они не принадлежат этому документу (нет галки в 1SJourn и 1С не сканирует регистр на наличие движений).

Кстати
Цитата:
у него ( по его ктверждению) есть ПриЗаписиПерепроводить(1)
а значит ЗАписать Провести выполняются всегда в одной транзакц

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

  
Наверх
 
IP записан
 
Z1
God Member
*****
Отсутствует


I Love YaBB 2!

Сообщений: 2906
Местоположение: Москва
Зарегистрирован: 26. Мая 2006
Пол: Мужской
Re: Движения одного документа у другого
Ответ #101 - 09. Ноября 2009 :: 08:51
Печать  
Цитата:
По поводу рейдов я бы рекомендовал Рейд10 ...
Структура файловой системы была предложена исходя из
предположения что делаем все без финансовых затрат на том же самом оборудовании с тем ми же
жесткими дисками.

Цитата:
Или ты предлагаешь из ПБ делать ЦБ?
Да именно это я и предлагаю.
Я еще учитываю что "Кто-то правил таблицы sql "руками"
При этом могли изменить данные и не влияющие на структуру таблиц.
Таких изменений вообще не найдешь.

Цитата:
"Я считаю что виноват движок 1С,
который при проведении документа цепляет IDDOC другого документа,
который также в этот момент проводится
Это вообще невероятно - после всех то монопольных блокировок на таблицы sql.
Постулат 1с ( при ее стандартных блокировках) В любой момент времени может проводиться
в базе(с разных компьютеров) не более одного документа.
Я(Z1) же считаю что движок 1с работает правильно ,если не доказано обратное.


Убеждать что Делает ПриЗаписиПерепроводить (для 1с sql)не собираюсь.
Можешь через поиск этого форума найти информацию.
Либо кто-то еще выскажется по этому вопросу.
  
Наверх
 
IP записан
 
Noy
Junior Member
**
Отсутствует


1C++ rocks!

Сообщений: 41
Зарегистрирован: 07. Ноября 2009
Re: Движения одного документа у другого
Ответ #102 - 09. Ноября 2009 :: 08:56
Печать  
Предлагаю прекратить этот ср перепалку - все равно каждый останется при своем мнении.
Автору желаю поменьше подобных проблем.
  
Наверх
 
IP записан
 
noxxx
Full Member
***
Отсутствует


1c++ rocks 8)

Сообщений: 239
Местоположение: Москва
Зарегистрирован: 24. Августа 2007
Пол: Мужской
Re: Движения одного документа у другого
Ответ #103 - 09. Ноября 2009 :: 09:42
Печать  
Ух, пока ходил в поликлинику сколько тут всего интересного появилось  Очень довольный

По поводу железа: манипуляции с железом были проведены не зря, пользователи заметили улучшение в плане блокировок. Т.е. теперь их как правило нет, чем наоборот, как было раньше Улыбка Поэтому к Z1 идут лучи благодарности и славы Улыбка Спасибо ему за это.

По поводу ТИИ: делали ТиИ копии ЦБ - ошибки есть. Сегодня приехала копия ПБ, попробую помучить её по схеме Z1.

Ошибки вида
"Поле LINENO. Неверное содержимое поля Numeric - "****"", порядка 4000 штук. На один и тот же вид документа - ВводОстатковПланаПроизводства.
  
Наверх
ICQ  
IP записан
 
Noy
Junior Member
**
Отсутствует


1C++ rocks!

Сообщений: 41
Зарегистрирован: 07. Ноября 2009
Re: Движения одного документа у другого
Ответ #104 - 09. Ноября 2009 :: 09:54
Печать  
noxxx писал(а) 09. Ноября 2009 :: 09:42:
"Поле LINENO. Неверное содержимое поля Numeric - "****"", порядка 4000 штук. На один и тот же вид документа - ВводОстатковПланаПроизводства.


Это скорее всего у тебя "длинный" документ ВводОстатковПланаПроизводства (более 9999 строк). Такие документы лучше разбивать на части.
  
Наверх
 
IP записан
 
grayrat
Junior Member
**
Отсутствует



Сообщений: 99
Местоположение: Russia, Moscow
Зарегистрирован: 20. Мая 2006
Пол: Мужской
Re: Движения одного документа у другого
Ответ #105 - 13. Ноября 2009 :: 10:55
Печать  
Кстати, у моих клиентов было примерно то-же самое: конфигурация - переделанная бухгалтерия, операция с правильного документа приципилась на документ, вообще не имеющий операций. Разрулить получилось с помощью ТИИ и с помощью выгрузки/загрузки - оба действия дали положительный результат.
  
Наверх
 
IP записан
 
Neo
Senior Member
****
Отсутствует


I Love YaBB 2!

Сообщений: 327
Зарегистрирован: 12. Ноября 2007
Re: Движения одного документа у другого
Ответ #106 - 19. Ноября 2009 :: 11:33
Печать  
Еще к вопросу о глюках движка 1С:  Круглые глаза

Мне встречались такие глюки.
При использовании метода Док.Провести(Режим) с определенным режимом (то ли 1, то ли 3, точно не помню) обнулялась запись в _1SSystem. При использовании метода провести без параметров: Провести(), все нормализовалось.

Были еще случаи, когда при проведении (либо при записи и проведении): грохалась ТЧ документа, а движения формировались; было, что грохались записи в _1Sjourn и шапке дока, при этом оставась ТЧ и движения; еще было, что часть движений и итогов формировались правильно, а часть нет, при этом документ тоже грохается.  Очень довольный В общем, чего только не бываает... все это было в разгар многопользовательской работы

P.S. С блокировками никогда не игрались, все происходит штатно))
  
Наверх
 
IP записан
 
Z1
God Member
*****
Отсутствует


I Love YaBB 2!

Сообщений: 2906
Местоположение: Москва
Зарегистрирован: 26. Мая 2006
Пол: Мужской
Re: Движения одного документа у другого
Ответ #107 - 19. Ноября 2009 :: 12:37
Печать  
Neo писал(а) 19. Ноября 2009 :: 11:33:
Еще к вопросу о глюках движка 1С:  Круглые глаза

Мне встречались такие глюки.
При использовании метода Док.Провести(Режим) с определенным режимом (то ли 1, то ли 3, точно не помню) обнулялась запись в _1SSystem. При использовании метода провести без параметров: Провести(), все нормализовалось.

Были еще случаи, когда при проведении (либо при записи и проведении): грохалась ТЧ документа, а движения формировались; было, что грохались записи в _1Sjourn и шапке дока, при этом оставась ТЧ и движения; еще было, что часть движений и итогов формировались правильно, а часть нет, при этом документ тоже грохается.  Очень довольный В общем, чего только не бываает... все это было в разгар многопользовательской работы

P.S. С блокировками никогда не игрались, все происходит штатно))

Если все что Вы написали правда - Выкидывайте Ваш сервер или
у Вас жутко плохая сеть.
  
Наверх
 
IP записан
 
Neo
Senior Member
****
Отсутствует


I Love YaBB 2!

Сообщений: 327
Зарегистрирован: 12. Ноября 2007
Re: Движения одного документа у другого
Ответ #108 - 19. Ноября 2009 :: 13:03
Печать  
Ну вообще-то, в большинстве из этих случаев при тщательном анализе все сводилось к глюкам именно 1С.

А так, в ближайшем времени перезжаем на новый сервак, посмотрим, что там будет))
  
Наверх
 
IP записан
 
Z1
God Member
*****
Отсутствует


I Love YaBB 2!

Сообщений: 2906
Местоположение: Москва
Зарегистрирован: 26. Мая 2006
Пол: Мужской
Re: Движения одного документа у другого
Ответ #109 - 19. Ноября 2009 :: 13:11
Печать  
(Neo) Если хотите то опишите Ваш сервер как можно подробней
, ОС , SQL подробно разберем Вашу текущую ситуацию.
  
Наверх
 
IP записан
 
Z1
God Member
*****
Отсутствует


I Love YaBB 2!

Сообщений: 2906
Местоположение: Москва
Зарегистрирован: 26. Мая 2006
Пол: Мужской
Re: Движения одного документа у другого
Ответ #110 - 19. Ноября 2009 :: 13:13
Печать  
Neo писал(а) 19. Ноября 2009 :: 13:03:
Ну вообще-то, в большинстве из этих случаев при тщательном анализе все сводилось к глюкам именно 1С.

Не верю.
Вы можете воспроизвести повторяемый глюк 1с ?

  
Наверх
 
IP записан
 
Neo
Senior Member
****
Отсутствует


I Love YaBB 2!

Сообщений: 327
Зарегистрирован: 12. Ноября 2007
Re: Движения одного документа у другого
Ответ #111 - 20. Ноября 2009 :: 07:00
Печать  
> Не верю.
Вы можете воспроизвести повторяемый глюк 1с ?

- Ну я же чуть выше привел пример с глюком метода Провести() с параметром. Когда началась эта проблема, мы поставили триггер на _1SSystem, собирали инфу. И в конечном итоге вышли на то место в коде, откуда скорее всего ноги растут. До написания этого кода ошибки такой никогда не было. После его корректировки ошибка полностью ушла. Однозначно это глюк 1С.

Вручную разумееся воспроизвести глюк не удавалось. Он бывает не часто, и только при одновременной работе > 100 пользователей.
  
Наверх
 
IP записан
 
Neo
Senior Member
****
Отсутствует


I Love YaBB 2!

Сообщений: 327
Зарегистрирован: 12. Ноября 2007
Re: Движения одного документа у другого
Ответ #112 - 20. Ноября 2009 :: 07:03
Печать  
Сервер описывать наверное уже смысла нет, т.к. через неделю-другую перезжаем на другой сервак.

Единственное, стоит вопрос, стоит ли переходить с SQL 2000 на 2005. Первые тесты не очень обнадеживающие: подтормаживают журналы, медленнее работают справочники и т.п. В инете тоже много пишут о такого рода проблемах. Так что пока в раздумиях...
  
Наверх
 
IP записан
 
Z1
God Member
*****
Отсутствует


I Love YaBB 2!

Сообщений: 2906
Местоположение: Москва
Зарегистрирован: 26. Мая 2006
Пол: Мужской
Re: Движения одного документа у другого
Ответ #113 - 20. Ноября 2009 :: 07:15
Печать  
Neo писал(а) 20. Ноября 2009 :: 07:03:
Сервер описывать наверное уже смысла нет, т.к. через неделю-другую перезжаем на другой сервак.

Единственное, стоит вопрос, стоит ли переходить с SQL 2000 на 2005. Первые тесты не очень обнадеживающие: подтормаживают журналы, медленнее работают справочники и т.п. В инете тоже много пишут о такого рода проблемах. Так что пока в раздумиях...

Смысл описывать старый сервер есть. Чтобы снять необоснованность глючности 1с. Сам подумай 1с77 наиболее
отлаженный программный продукт ( если память не изменяет 7.0 появился в сентябре 1996).
Также имеет смысл описывать чтобы старые ошибки (Неточности ) не перенести на новый сервер.

стоит sql2005 гороздо лучше чем sql2000.
sp на  sql2005 надо не ниже второго обязательно.
переписать подчиненные документы через прямой запрос.
в sql2005 исправлена ошибка с замедлением массового перепроведения( не нужен reconect).

sql2005 более интектуален чем sql2000 и его приводит в ступор плохая файловая система.
sql2005 пытается оптимизировать операции ввода вывода
(если файловая система плохая) у него это не получается и он
все время анализирует сам себя. Объяснение ненаучное но свое
основанное на своих шишках.
  
Наверх
 
IP записан
 
Z1
God Member
*****
Отсутствует


I Love YaBB 2!

Сообщений: 2906
Местоположение: Москва
Зарегистрирован: 26. Мая 2006
Пол: Мужской
Re: Движения одного документа у другого
Ответ #114 - 20. Ноября 2009 :: 07:22
Печать  
Neo писал(а) 20. Ноября 2009 :: 07:00:
> Не верю.
Вы можете воспроизвести повторяемый глюк 1с ?

- Ну я же чуть выше привел пример с глюком метода Провести() с параметром. Когда началась эта проблема, мы поставили триггер на _1SSystem, собирали инфу. И в конечном итоге вышли на то место в коде, откуда скорее всего ноги растут. До написания этого кода ошибки такой никогда не было. После его корректировки ошибка полностью ушла. Однозначно это глюк 1С.

Вручную разумееся воспроизвести глюк не удавалось. Он бывает не часто, и только при одновременной работе > 100 пользователей.

Ну так приведите этот код до и после корректировки.
у меня тоже больше 100 пользователей но такого почему-то не происходит.

  
Наверх
 
IP записан
 
Neo
Senior Member
****
Отсутствует


I Love YaBB 2!

Сообщений: 327
Зарегистрирован: 12. Ноября 2007
Re: Движения одного документа у другого
Ответ #115 - 20. Ноября 2009 :: 10:13
Печать  
> Ну так приведите этот код до и после корректировки.

- Да все там очень просто. При закрытии документа при выполнении определенных условий создается новый документ (перемещение) и выводится вопрос - провести перемещение или нет.

Док=СоздатьОбъект("Документ.Перемещение");
---заполнение документа
Док.Записать();
Док.Провести(3); (если ответ на вопрос - "да").

Вот этот вариант в момент пиковых нагрузок сбивал ТА (обнулял).

В течение неск. месяцев искали причину (как временное решение - триггер, который откатывал транзакцию при обнулении ТА).

В итоге поставили Док.Провести(), и все, ошибка ушла, и уже больше года ее нет.
  
Наверх
 
IP записан
 
Neo
Senior Member
****
Отсутствует


I Love YaBB 2!

Сообщений: 327
Зарегистрирован: 12. Ноября 2007
Re: Движения одного документа у другого
Ответ #116 - 20. Ноября 2009 :: 10:16
Печать  
> у меня тоже больше 100 пользователей но такого почему-то не происходит.

- ну так у нас тоже много чего не происходит, что происходит у вас, хотя больше 100 пользователей (на данный момент уже почти 150)  Подмигивание

Если бы каждый глюк можно было так просто воспроизвести на аналогичной системе, то жизнь программиста была бы легка и безоблачна  Улыбка
  
Наверх
 
IP записан
 
Z1
God Member
*****
Отсутствует


I Love YaBB 2!

Сообщений: 2906
Местоположение: Москва
Зарегистрирован: 26. Мая 2006
Пол: Мужской
Re: Движения одного документа у другого
Ответ #117 - 20. Ноября 2009 :: 11:02
Печать  
Neo писал(а) 20. Ноября 2009 :: 10:13:
> Ну так приведите этот код до и после корректировки.

- Да все там очень просто. При закрытии документа при выполнении определенных условий создается новый документ (перемещение) и выводится вопрос - провести перемещение или нет.

Док=СоздатьОбъект("Документ.Перемещение");
---заполнение документа
Док.Записать();
Док.Провести(3); (если ответ на вопрос - "да").

Вот этот вариант в момент пиковых нагрузок сбивал ТА (обнулял).

В течение неск. месяцев искали причину (как временное решение - триггер, который откатывал транзакцию при обнулении ТА).

В итоге поставили Док.Провести(), и все, ошибка ушла, и уже больше года ее нет.

Не все так просто как тебе кажеться.

Ну и попробуй расписать на бумаге что происходит при Провести(3). И раз Вы легко отказались от этого то это  было неправильное применение метода а не ошибка 1с.

Далее в приведенном тексте есть ошибка.Не обрабатывается случай когда документ не запишется ( особенно когда новый документ )а действие не прервется
вот именно в этом случае ты и попадал на свою ситуацию.

Т.е надо было написать либо

Код
Выбрать все
ФлУСпех = 1;
Попытка
 Док.Записать();
Исключение
ФлУСпех = 0;
КонецПопытки;
Если ФлУСпех = 1 Тогда
Док.Провести(); // Еще более обезапаситься можно если  провести делать в Попытка
Иначе
// Обработка Ошибки Записать()
КонецЕсли;
 



Если все таки Вам нужен режим провести 3 то все это надо оборачивать во внешнюю транзакцию
т.е код

Код
Выбрать все
НачатьТранзакцию();
ФлУСпех = 1;
Попытка
 Док.Записать();
Исключение
ФлУСпех = 0;
КонецПопытки;
Если ФлУСпех = 0 Тогда
   ОтменитьТранзакцию();
   // обработка ошибки записать
  return;
КонецЕсли;
Попытка
Док.Провести(3);
Исключение
ФлУСпех = 0;
КонецПопытки;
Если ФлУСпех = 0 Тогда
   ОтменитьТранзакцию();
   // обработка ошибки Провести(3)
  return;
КонецЕсли;

ЗафиксироватьТранзакцию();
 











  
Наверх
 
IP записан
 
Neo
Senior Member
****
Отсутствует


I Love YaBB 2!

Сообщений: 327
Зарегистрирован: 12. Ноября 2007
Re: Движения одного документа у другого
Ответ #118 - 20. Ноября 2009 :: 11:28
Печать  
> неправильное применение метода а не ошибка 1с.

- Т.е., если штатный метод, как бы его не использовать, может вызвать полное обнуление ТА, то этот метод нельзя считать глючным? Я думаю, что налицо именно глючность метода.

Даже при неправильном использовании метода такого быть в принципе не должно. Тем более в моем случае ничего особо критичного не было. Не думаю, что многие программисты постоянно так перестраховываются. Но даже если все делать идеально правильно, все равно это не гарантирует, что при некотором стечении обстоятельств тот или иной глюк не проявится.
  
Наверх
 
IP записан
 
Neo
Senior Member
****
Отсутствует


I Love YaBB 2!

Сообщений: 327
Зарегистрирован: 12. Ноября 2007
Re: Движения одного документа у другого
Ответ #119 - 20. Ноября 2009 :: 11:31
Печать  
Кстати, в нашем случае Перемещение записывалось, но что-то сбоило при проведении
  
Наверх
 
IP записан
 
Neo
Senior Member
****
Отсутствует


I Love YaBB 2!

Сообщений: 327
Зарегистрирован: 12. Ноября 2007
Re: Движения одного документа у другого
Ответ #120 - 20. Ноября 2009 :: 11:33
Печать  
> Не обрабатывается случай когда документ не запишется ( особенно когда новый документ )а действие не прервется
вот именно в этом случае ты и попадал на свою ситуацию.

- Если этот случай попадает на мою ситуацию, значит, ее можно вопроизвести. Ты пробовал ее вопроизводить?
  
Наверх
 
IP записан
 
Neo
Senior Member
****
Отсутствует


I Love YaBB 2!

Сообщений: 327
Зарегистрирован: 12. Ноября 2007
Re: Движения одного документа у другого
Ответ #121 - 20. Ноября 2009 :: 11:35
Печать  
P.S. Вот ты говоришь, что я неправильно использовал метод. Но если 1С написала метод, который может в принципе сотворить такое, скажи, не грубейшая ли это ошибка метода 1С?  Подмигивание
  
Наверх
 
IP записан
 
Z1
God Member
*****
Отсутствует


I Love YaBB 2!

Сообщений: 2906
Местоположение: Москва
Зарегистрирован: 26. Мая 2006
Пол: Мужской
Re: Движения одного документа у другого
Ответ #122 - 20. Ноября 2009 :: 13:22
Печать  
(Neo) На всякий случай все что в ветке Ничего личного против тебя
или кого либо только обезличенные факты, цифры.
  
Наверх
 
IP записан
 
Z1
God Member
*****
Отсутствует


I Love YaBB 2!

Сообщений: 2906
Местоположение: Москва
Зарегистрирован: 26. Мая 2006
Пол: Мужской
Re: Движения одного документа у другого
Ответ #123 - 20. Ноября 2009 :: 13:23
Печать  
Цитата:
Даже при неправильном использовании метода такого быть в принципе не должно.Тем более в моем случае ничего особо критичного не было

(Neo) Распиши для себя на бумаге что происходит при Провести(3) ( документ не на ТA)
и при этом еще 5 человек записывают проводят другие документы. И ты поймешь насколько это сложное и критичное действие.
И распиши то же самое Провести(0).
  
Наверх
 
IP записан
 
Z1
God Member
*****
Отсутствует


I Love YaBB 2!

Сообщений: 2906
Местоположение: Москва
Зарегистрирован: 26. Мая 2006
Пол: Мужской
Re: Движения одного документа у другого
Ответ #124 - 20. Ноября 2009 :: 13:24
Печать  
Цитата:
Но если 1С написала метод, который может в принципе сотворить такое, скажи, не грубейшая ли это ошибка метода 1С?

Я думаю что 1с в моей защите не нуждается но попытаюсь ответить.

Я считаю что 1с должна была реализовывать методы Записать, Провести как функции а не как процедуры.
Т.е. должна была быть полная аналогия с  методом НайтиДокумент.

Раз этого не сделано то заботиться об этом должен программист. И чем сложнее приложение,
(а сложность получается еще и из-за множества(более 100) одновременно работающих пользователей) то
тем тщательнее надо писать программы.Ошибки совершают все (нет безошибочных программ)
вопрос как исправляются ошибки и легче всего сказать что кто-то другой накосячил (наглючил),
а не я сам виноват.

1с приложение работает не в вакуме в сложном общении с sql сервером.
Кстати sql сервер тоже по разным причинам может сам откатывать транзакции.
При этом никто же не говорит что ms sql глючный продукт и не надо например его
использовать в банках и других ответсвенных сферах.

PS полуoff (метафора)
Залил на неизвесной заправке плохой бензин ( увы это правда жизни).
Уже 3 недели мучаюсь.Ситуация постепенно улучшается.
Из этого же нельзя сделать вывод что автомобиль у меня глючный.

  
Наверх
 
IP записан
 
noxxx
Full Member
***
Отсутствует


1c++ rocks 8)

Сообщений: 239
Местоположение: Москва
Зарегистрирован: 24. Августа 2007
Пол: Мужской
Re: Движения одного документа у другого
Ответ #125 - 25. Ноября 2009 :: 07:04
Печать  
И вот опять случился глюк. Сообщили что пропал документ "Отказ". По журналу он есть, но на самом деле является документом "Рекламация". Причем открывается форма документа "Отказ", но данные в ТЧ и Комментарии от документа "Рекламация". Жесть. В дочке как всегда всё впорядке. Тяну через инет свежую копию дочки. Ткните носом в какую-нибудь тему или доку где написано что нужно сделать с дочкой, что б она стала центральной базой?  Плачущий
  
Наверх
ICQ  
IP записан
 
Z1
God Member
*****
Отсутствует


I Love YaBB 2!

Сообщений: 2906
Местоположение: Москва
Зарегистрирован: 26. Мая 2006
Пол: Мужской
Re: Движения одного документа у другого
Ответ #126 - 25. Ноября 2009 :: 08:10
Печать  
noxxx писал(а) 25. Ноября 2009 :: 07:04:
И вот опять случился глюк. Сообщили что пропал документ "Отказ". По журналу он есть, но на самом деле является документом "Рекламация". Причем открывается форма документа "Отказ", но данные в ТЧ и Комментарии от документа "Рекламация". Жесть. В дочке как всегда всё впорядке. Тяну через инет свежую копию дочки. Ткните носом в какую-нибудь тему или доку где написано что нужно сделать с дочкой, что б она стала центральной базой?  Плачущий

Опишите ситуацию более подробней.
Последовательность создания во времени и в каких базах этих двух документов ( где их создавали, изменяли).

Для этого iddoc поле iddocdef является реализацией или  Отказ?

Получается что при записи документа отказ у тебя данные "наезжают" на другое поле. Т.к. данные выгрузки в Переферийную базу идут правильные то скорее всего врет raid контролер. происходит растыковка операционной системы и sql в контролере.
т.е происходит ситуация контролерр сохраняет данные в кеше и
шлет sql серверу сигнал что сбросил данные на диск.
sql перезатирает данные в кеше еще не сохраненные на диск.
Так что тебе надо разбираться с контролером - опциями, его дровами может память в самом контролере "чуть-чуть" битая.
Для начала можно в нем выключить write back.(может и память)
Как это точно определить и отловить не знаю.

Дочка стала центральной надо
разбирись с таблицей _1sdbset
и сам увидишь что там надо сделать.
таблицы _1sdwnds и _1supdts надо очистить от записей. Лучше сначала потренироваться на копиях.
  
Наверх
 
IP записан
 
Z1
God Member
*****
Отсутствует


I Love YaBB 2!

Сообщений: 2906
Местоположение: Москва
Зарегистрирован: 26. Мая 2006
Пол: Мужской
Re: Движения одного документа у другого
Ответ #127 - 25. Ноября 2009 :: 08:26
Печать  
PS попробовал расписать на бумаге не получается даже теоретически создать твою ситуацию.
Получается в момент передачи данных в ПБ все Ок
из всех документов потом портятся только эти два документа -
непонятно.
Может попробовать переиндексировать всю базу ? (естественно вечером)
Так что описывай как можно подробней ситуацию.
также предполагаю что сейчас нет ручной правки таблиц.
  
Наверх
 
IP записан
 
noxxx
Full Member
***
Отсутствует


1c++ rocks 8)

Сообщений: 239
Местоположение: Москва
Зарегистрирован: 24. Августа 2007
Пол: Мужской
Re: Движения одного документа у другого
Ответ #128 - 25. Ноября 2009 :: 09:24
Печать  
Z1 писал(а) 25. Ноября 2009 :: 08:10:
Опишите ситуацию более подробней.
Последовательность создания во времени и в каких базах этих двух документов ( где их создавали, изменяли).
Для этого iddoc поле iddocdef является реализацией или  Отказ?
Получается что при записи документа отказ у тебя данные "наезжают" на другое поле. Т.к. данные выгрузки в Переферийную базу идут правильные то скорее всего врет raid контролер. происходит растыковка операционной системы и sql в контролере.
т.е происходит ситуация контролерр сохраняет данные в кеше и шлет sql серверу сигнал что сбросил данные на диск.
sql перезатирает данные в кеше еще не сохраненные на диск.
Так что тебе надо разбираться с контролером - опциями, его дровами может память в самом контролере "чуть-чуть" битая.
Для начала можно в нем выключить write back.(может и память)
Как это точно определить и отловить не знаю.

Дочка стала центральной надо
разбирись с таблицей _1sdbset
и сам увидишь что там надо сделать.
таблицы _1sdwnds и _1supdts надо очистить от записей. Лучше сначала потренироваться на копиях.


Документ Отказ Мо-000908, создан 13.11 в 18:07:37, записан 13.11 в 18:07:43
Документ Рекламация Мо-000082, события о создании в журнале нет. Записан в 18:13:44

При этом документ Рекламация есть в базе и он нормальный.
Отказ Мо-000908 также есть в базе, но от 16.11, и это совсем другой документ, а от 13.11, по всей видимости, не сохранился.

При щелчке по строке журнала регистрации открывается Отказ Мо-000082 от 13.11, данные по колонкам размещены логично, т.е. содержимое первой колонки ТЧ документа соответствует содержимому первой колонки ТЧ документа Рекламация, комментарий - также из документа рекламация. Поэтому я склоняюсь к тому, что это ошибка логическая.

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

Башка крУгом  Печаль

Кстати, проверяли остатки в периф. базе - они не сходятся с центральной по производственным регистрам.

Может, попробовать сделать выгрузку/загрузку центральной базы, а потом из неё пересоздать периферийную?  Нерешительный
  
Наверх
ICQ  
IP записан
 
noxxx
Full Member
***
Отсутствует


1c++ rocks 8)

Сообщений: 239
Местоположение: Москва
Зарегистрирован: 24. Августа 2007
Пол: Мужской
Re: Движения одного документа у другого
Ответ #129 - 25. Ноября 2009 :: 09:29
Печать  
Z1 писал(а) 25. Ноября 2009 :: 08:26:
PS попробовал расписать на бумаге не получается даже теоретически создать твою ситуацию.
Получается в момент передачи данных в ПБ все Ок
из всех документов потом портятся только эти два документа -
непонятно.
Может попробовать переиндексировать всю базу ? (естественно вечером)
Так что описывай как можно подробней ситуацию.
также предполагаю что сейчас нет ручной правки таблиц.


Оказалось что существующий в ПБ отказ есть и в ЦБ, но это совершенно другой отказ, не тот, что создавали 13.11. От него вот только рожки да ножки остались, которые можно увидеть только через журнал регистрации :/
  
Наверх
ICQ  
IP записан
 
Noy
Junior Member
**
Отсутствует


1C++ rocks!

Сообщений: 41
Зарегистрирован: 07. Ноября 2009
Re: Движения одного документа у другого
Ответ #130 - 25. Ноября 2009 :: 09:32
Печать  
Выложи файл mlg (можно только часть - начиная с 10.11.09 например)
  
Наверх
 
IP записан
 
Z1
God Member
*****
Отсутствует


I Love YaBB 2!

Сообщений: 2906
Местоположение: Москва
Зарегистрирован: 26. Мая 2006
Пол: Мужской
Re: Движения одного документа у другого
Ответ #131 - 25. Ноября 2009 :: 09:33
Печать  
Расписывай картину как можно подробней (Чтобы любой мог понять что произошло). Из двух постов даже что произошло у тебя совершенно непонятно.
  
Наверх
 
IP записан
 
noxxx
Full Member
***
Отсутствует


1c++ rocks 8)

Сообщений: 239
Местоположение: Москва
Зарегистрирован: 24. Августа 2007
Пол: Мужской
Re: Движения одного документа у другого
Ответ #132 - 25. Ноября 2009 :: 10:21
Печать  
По mlg по Отказу 908 только 2 строки, и больше ничего:
Код
Выбрать все
20091113;18:07:37;Иванова;E;Docs;DocNew;3;;O/39201/0;Отказ Мо-000908 13.11.2009
20091113;18:07:43;Иванова;E;Docs;DocWriteNew;2;;O/39201/(CEN)819018;Отказ Мо-000908 13.11.2009 18:07:43 



По рекламации создается документ, но потом с ним ничего не происходит:

Код
Выбрать все
20091113;15:13:58;Петрова;E;Docs;DocNew;3;;O/39750/0;Рекламация Мо-000082 13.11.2009 



Затем:

Код
Выбрать все
20091113;18:11:55;Петрова;E;Docs;DocNew;3;;O/39750/0;Рекламация Мо-000083 13.11.2009
20091113;18:13:44;Петрова;E;Docs;DocWriteNew;2;;O/39750/(CEN)819018;Рекламация Мо-000082 13.11.2009 18:13:44
 


Т.е. создали документ №83, а записался он как №82. Либо №82 уже был открыт, либо я не знаю как так  Нерешительный

А потом еще раз создается №83:
Код
Выбрать все
20091113;18:41:53;Петрова;E;Docs;DocNew;3;;O/39750/0;Рекламация Мо-000083 13.11.2009
20091113;18:43:56;Петрова;E;Docs;DocWriteNew;2;;O/39750/(CEN)819021;Рекламация Мо-000083 13.11.2009 18:43:56
 



Т.е. получается что в промежутке между созданием и записью документа Рекламация Мо-000082 создается документ Отказ Мо-000908.
При щелчке по строке журнала регистрации от 18:07:43 открывается форма документа Отказ Мо-000082 13.11.2009, которого на самом деле не существует. Данные в нем - из документа Рекламация Мо-000082 13.11.2009. Документа Отказ Мо-000908 13.11.2009 не существует, но существует Отказ Мо-000908 16.11.2009 другого автора, который относится к другой заявке.

Надеюсь, вы хоть что-то поймете  Смущённый
  
Наверх
ICQ  
IP записан
 
Z1
God Member
*****
Отсутствует


I Love YaBB 2!

Сообщений: 2906
Местоположение: Москва
Зарегистрирован: 26. Мая 2006
Пол: Мужской
Re: Движения одного документа у другого
Ответ #133 - 25. Ноября 2009 :: 10:52
Печать  
Цитата:
Т.е. создали документ №83, а записался он как №82. Либо №82 уже был открыт, либо я не знаю как так  Нерешительный
А потом еще раз создается №83:

Не вижу вообще проблемы начали создавать документ 83
в нем вручную поменяли номер на 82 и сохранили.
Самый первый 82  вообще не записали.

Также учитывай что в mlg не все попадает.
например не попадают изменения из обработок.
Также в mlg ошибка в том что время берется с локального компьютера и поэтому более ранние записи могут оказаться более поздними (а иногда было и такое даже другим числом)

Чтобы точно узнать надо писать свой аналог mlg
либо на основе тригера в отдельную sql таблицу либо самому
в модуле ПриЗакрытии анализируешь и  и пишешь в отдельную sql таблицу. Во втором случае надо еще и обработки изменяющие
создающие документы тоже изменять с учетом этого. Время берется в обоих случаях серверное.
  
Наверх
 
IP записан
 
noxxx
Full Member
***
Отсутствует


1c++ rocks 8)

Сообщений: 239
Местоположение: Москва
Зарегистрирован: 24. Августа 2007
Пол: Мужской
Re: Движения одного документа у другого
Ответ #134 - 25. Ноября 2009 :: 10:55
Печать  
А (CEN)819018 - это я так понимаю идентификатор объекта? Он одинаковый у Отказ Мо-000908 и Рекламация Мо-000082.
  
Наверх
ICQ  
IP записан
 
Z1
God Member
*****
Отсутствует


I Love YaBB 2!

Сообщений: 2906
Местоположение: Москва
Зарегистрирован: 26. Мая 2006
Пол: Мужской
Re: Движения одного документа у другого
Ответ #135 - 25. Ноября 2009 :: 11:07
Печать  
noxxx писал(а) 25. Ноября 2009 :: 10:55:
А (CEN)819018 - это я так понимаю идентификатор объекта? Он одинаковый у Отказ Мо-000908 и Рекламация Мо-000082.

что это означает не знаю.
Не вижу вообще противоречия попытались создать (CEN)819018
объект не был создан. После этого этот же номер пытаемся (CEN)819018 назначить другому объекту.Попытка успешно завершилась документ сохранился.

проверь значения у этих документов по iddoc в обоих базах.
Если id1 в главной базе равен id1 в пер базе
и id2  в главной базе равен id2 в пер базе
то из твоих заключений (ИХМО) сделаны неправильные
выводы. Все правильно работает.
  
Наверх
 
IP записан
 
noxxx
Full Member
***
Отсутствует


1c++ rocks 8)

Сообщений: 239
Местоположение: Москва
Зарегистрирован: 24. Августа 2007
Пол: Мужской
Re: Движения одного документа у другого
Ответ #136 - 25. Ноября 2009 :: 11:18
Печать  
Если всё работает правильно, то откуда тогда берется псевдодокумент, открываемый по щелчку по строке журнала регистрации?
  
Наверх
ICQ  
IP записан
 
Noy
Junior Member
**
Отсутствует


1C++ rocks!

Сообщений: 41
Зарегистрирован: 07. Ноября 2009
Re: Движения одного документа у другого
Ответ #137 - 25. Ноября 2009 :: 11:23
Печать  
Вот тут очень хорошо видна ошибка 1С! (Z1 ты не прав!)
Программа записывает два разных документа под одним ID.
В результате запись второго документа перекрыла записи первого, но только в тех местах, где они логигески должны быть перезаписаны (потому и табличная часть от первого документа не удалилась).


ЗЫ Кстати в mlg время пишется локального компа, но хронология соблюдается - легко можно узнать какое из действие было первым.
  
Наверх
 
IP записан
 
noxxx
Full Member
***
Отсутствует


1c++ rocks 8)

Сообщений: 239
Местоположение: Москва
Зарегистрирован: 24. Августа 2007
Пол: Мужской
Re: Движения одного документа у другого
Ответ #138 - 25. Ноября 2009 :: 11:28
Печать  
С хронологией всё хорошо, записи друг за другом следуют.
Сейчас делаю выгрузку/загрузку, посмотрю, останется ли эта ошибка или нет.
  
Наверх
ICQ  
IP записан
 
Z1
God Member
*****
Отсутствует


I Love YaBB 2!

Сообщений: 2906
Местоположение: Москва
Зарегистрирован: 26. Мая 2006
Пол: Мужской
Re: Движения одного документа у другого
Ответ #139 - 25. Ноября 2009 :: 11:46
Печать  
(Noy) Я не утверждаю что полностью прав.
Я говорю что не вижу противочения.
Ты не учитываешь что время между записями состовляет 6 минут
может это конечно тоже совпадение но два совпадения маловероятны
т.е. что за 6 минут не смогли выделить номер iddoc - не верю.
Полностью что происходит при создании и записи нового документа
была месяца два мое описание ( и как выделяется iddoc) проВоспроизводимую ошибку создания нового документа но там 1с оставалась на бесконечной транзакции.
  
Наверх
 
IP записан
 
noxxx
Full Member
***
Отсутствует


1c++ rocks 8)

Сообщений: 239
Местоположение: Москва
Зарегистрирован: 24. Августа 2007
Пол: Мужской
Re: Движения одного документа у другого
Ответ #140 - 25. Ноября 2009 :: 11:48
Печать  
Бесконечная транзакция - это когда до посинения нажимаешь на кнопку ОК, а оно говорит о блокировке?
У нас такое было, и я боюсь, что может быть на этом документе и было.
Документ просто закрыли и создали новый. Наверное так и есть.
  
Наверх
ICQ  
IP записан
 
Noy
Junior Member
**
Отсутствует


1C++ rocks!

Сообщений: 41
Зарегистрирован: 07. Ноября 2009
Re: Движения одного документа у другого
Ответ #141 - 25. Ноября 2009 :: 11:49
Печать  
У себя только что поймал схожую проблему, сейчас по горячим следам покручу mlg (у меня терминал - у всех время одинаковое) и попробую какие-нибудь выводы "накропать".
  
Наверх
 
IP записан
 
Z1
God Member
*****
Отсутствует


I Love YaBB 2!

Сообщений: 2906
Местоположение: Москва
Зарегистрирован: 26. Мая 2006
Пол: Мужской
Re: Движения одного документа у другого
Ответ #142 - 25. Ноября 2009 :: 11:57
Печать  
noxxx писал(а) 25. Ноября 2009 :: 10:55:
А (CEN)819018 - это я так понимаю идентификатор объекта? Он одинаковый у Отказ Мо-000908 и Рекламация Мо-000082.

Да не эти идентификаторы, а iddoc в _1sjourn для
двух документов в двух базах.
После этого посмотри по этому iddoc значение шапок и табличных частей в двух базах(центральной и переферийной).
  
Наверх
 
IP записан
 
noxxx
Full Member
***
Отсутствует


1c++ rocks 8)

Сообщений: 239
Местоположение: Москва
Зарегистрирован: 24. Августа 2007
Пол: Мужской
Re: Движения одного документа у другого
Ответ #143 - 25. Ноября 2009 :: 12:10
Печать  
По этому iddoc (HJYICEN) есть только рекламация, в таблицах отказов этого iddoc нет. Либо лыжи, либо что? Куда мог деться сохраненный (по журналу) документ?
  
Наверх
ICQ  
IP записан
 
Noy
Junior Member
**
Отсутствует


1C++ rocks!

Сообщений: 41
Зарегистрирован: 07. Ноября 2009
Re: Движения одного документа у другого
Ответ #144 - 25. Ноября 2009 :: 12:11
Печать  
noxxx, а скажи, не используется ли у тебя в базе такой прием, как проводка документа из модуля проведения другого документа (через открытьФорму с параметром) или других не совсем штатных приемов?
  
Наверх
 
IP записан
 
Z1
God Member
*****
Отсутствует


I Love YaBB 2!

Сообщений: 2906
Местоположение: Москва
Зарегистрирован: 26. Мая 2006
Пол: Мужской
Re: Движения одного документа у другого
Ответ #145 - 25. Ноября 2009 :: 12:16
Печать  
noxxx писал(а) 25. Ноября 2009 :: 12:10:
По этому iddoc (HJYICEN) есть только рекламация, в таблицах отказов этого iddoc нет. Либо лыжи, либо что? Куда мог деться сохраненный (по журналу) документ?

Документ первичен журнал mlg вторичен а не наоборот.
Если есть два документа в базе то у них есть два разных iddoc.
значение iddoc у документа можно получить хотя бы так :
Код
Выбрать все
	meta = СоздатьОбъект("MetaDataWork");
	Зн_Док = "'" + meta.ЗначениеВСтрокуБД(Док_1) + "'";
	Сообщить("Док = " + Док_1 + " iddoc = " + Зн_Док); 

  
Наверх
 
IP записан
 
noxxx
Full Member
***
Отсутствует


1c++ rocks 8)

Сообщений: 239
Местоположение: Москва
Зарегистрирован: 24. Августа 2007
Пол: Мужской
Re: Движения одного документа у другого
Ответ #146 - 25. Ноября 2009 :: 12:19
Печать  
Я этот iddoc взял из _1sjourn
  
Наверх
ICQ  
IP записан
 
Z1
God Member
*****
Отсутствует


I Love YaBB 2!

Сообщений: 2906
Местоположение: Москва
Зарегистрирован: 26. Мая 2006
Пол: Мужской
Re: Движения одного документа у другого
Ответ #147 - 25. Ноября 2009 :: 12:20
Печать  
noxxx писал(а) 25. Ноября 2009 :: 12:19:
Я этот iddoc взял из _1sjourn

ты же говоришь что два документа
значит они оба должны быть в таблице журналов
перечитай и проверь #135
  
Наверх
 
IP записан
 
noxxx
Full Member
***
Отсутствует


1c++ rocks 8)

Сообщений: 239
Местоположение: Москва
Зарегистрирован: 24. Августа 2007
Пол: Мужской
Re: Движения одного документа у другого
Ответ #148 - 25. Ноября 2009 :: 12:25
Печать  
Того документа "Отказ", который создавался изначально, нет ни в одной базе. Есть уже другой, от другого числа, другого автора. А тот просто исчез. Что с чем сравнивать? Нормальные документы?
  
Наверх
ICQ  
IP записан
 
Noy
Junior Member
**
Отсутствует


1C++ rocks!

Сообщений: 41
Зарегистрирован: 07. Ноября 2009
Re: Движения одного документа у другого
Ответ #149 - 25. Ноября 2009 :: 12:26
Печать  
noxxx, ответь на мой вопрос.
  
Наверх
 
IP записан
 
Z1
God Member
*****
Отсутствует


I Love YaBB 2!

Сообщений: 2906
Местоположение: Москва
Зарегистрирован: 26. Мая 2006
Пол: Мужской
Re: Движения одного документа у другого
Ответ #150 - 25. Ноября 2009 :: 12:37
Печать  
noxxx писал(а) 25. Ноября 2009 :: 12:25:
Того документа "Отказ", который создавался изначально, нет ни в одной базе. Есть уже другой, от другого числа, другого автора. А тот просто исчез. Что с чем сравнивать? Нормальные документы?

Если документ был то его след обязательно есть во второй базе
данных в журнале той mlg при подгрузке этот документ должен создаться b остаться запись.

А так получается по каким то причинам документ не создался
предположим откат sql транзакции sql сервером при этом в файле mlg никакого отката не произойдет. Откат произошел iddoc освободился и далее этот iddoc был выделен другому пользователю.
  
Наверх
 
IP записан
 
noxxx
Full Member
***
Отсутствует


1c++ rocks 8)

Сообщений: 239
Местоположение: Москва
Зарегистрирован: 24. Августа 2007
Пол: Мужской
Re: Движения одного документа у другого
Ответ #151 - 25. Ноября 2009 :: 12:55
Печать  
Noy, прости, не заметил вопроса.
Проведение документов из модуля проведения используется, да.
  
Наверх
ICQ  
IP записан
 
Z1
God Member
*****
Отсутствует


I Love YaBB 2!

Сообщений: 2906
Местоположение: Москва
Зарегистрирован: 26. Мая 2006
Пол: Мужской
Re: Движения одного документа у другого
Ответ #152 - 25. Ноября 2009 :: 13:05
Печать  
noxxx писал(а) 25. Ноября 2009 :: 12:55:
Noy, прости, не заметил вопроса.
Проведение документов из модуля проведения используется, да.

Вот и ответь на вопрос что произойдет
внутрений документ и выдаст откат транзакции.

Отвечу ИХМО В MSsql нет полноценных вложенных транзакций.
При этом произойдет следущее в базе произойдет откат документа и журнала документа как внешнего так и внутреннего.
откроется неявная транзакция и на основании контекста формы
внешний документ проведется.

Если Вам так это нужно то разработайте систему флагов чтобы ловить ситуацию этого поста.
  
Наверх
 
IP записан
 
noxxx
Full Member
***
Отсутствует


1c++ rocks 8)

Сообщений: 239
Местоположение: Москва
Зарегистрирован: 24. Августа 2007
Пол: Мужской
Re: Движения одного документа у другого
Ответ #153 - 25. Ноября 2009 :: 13:30
Печать  
Странно все равно.
При записи документа Отказ произошел откат транзакции по какой-то причине?
Если в журнале есть запись о том, что документ записан, то значит он уже был записан, а потом вдруг куда-то исчез.
  
Наверх
ICQ  
IP записан
 
Noy
Junior Member
**
Отсутствует


1C++ rocks!

Сообщений: 41
Зарегистрирован: 07. Ноября 2009
Re: Движения одного документа у другого
Ответ #154 - 25. Ноября 2009 :: 13:30
Печать  
noxxx, у меня тоже используется такая конструкция, и симптомы такие же.
Так что давай переписывать этот участок.
Z1, не совсем согласен с твоим предположением про "откат документа", но то что проблема во "вложенных" транзакциях - это факт, и не понимает их по всей видимости не sql, а сама 1С.
Предполагаю что происходит следующее:
открывается одна транзакция, внутри еще одна, а когда внутренняя транзакция закрывается, 1С снимает блокировки не дожидаясь завершения внешней транзакции - т.к. по логике работы 1С транзакция может быть только одна.

вот такое мое ИМХО.
  
Наверх
 
IP записан
 
noxxx
Full Member
***
Отсутствует


1c++ rocks 8)

Сообщений: 239
Местоположение: Москва
Зарегистрирован: 24. Августа 2007
Пол: Мужской
Re: Движения одного документа у другого
Ответ #155 - 25. Ноября 2009 :: 13:31
Печать  
Значит конструкции типа НачатьТранзакцию(), ОткатитьТранзакцию() и ЗафиксироватьТранзакцию() тоже могут привести к такой ситуации?
  
Наверх
ICQ  
IP записан
 
Z1
God Member
*****
Отсутствует


I Love YaBB 2!

Сообщений: 2906
Местоположение: Москва
Зарегистрирован: 26. Мая 2006
Пол: Мужской
Re: Движения одного документа у другого
Ответ #156 - 25. Ноября 2009 :: 13:40
Печать  
Noy писал(а) 25. Ноября 2009 :: 13:30:
noxxx, у меня тоже используется такая конструкция, и симптомы такие же.
Так что давай переписывать этот участок.
Z1, не совсем согласен с твоим предположением про "откат документа", но то что проблема во "вложенных" транзакциях - это факт, и не понимает их по всей видимости не sql, а сама 1С.
Предполагаю что происходит следующее:
открывается одна транзакция, внутри еще одна, а когда внутренняя транзакция закрывается, 1С снимает блокировки не дожидаясь завершения внешней транзакции - т.к. по логике работы 1С транзакция может быть только одна.

вот такое мое ИМХО.


При завершении внутренего проведения
возможны два случая
1. внутрений документ провелся хорошо по commit
надо в этом случае внимательно смотреть уровень транзакций
выполните во время и после успешного проведения врутреннего документа
select  @@trancount после этих результатов можно будет все точно описать.
(Noy) может быть Вы и правы. там же стоит блокировка до  окончания транзакции вопрос только окончилась она или нет.
2. когда внутренний документ откатится по rollback то вроде я тоже прав.

Ихмо придумывайте что нибудь другое а не такие методы
  
Наверх
 
IP записан
 
Z1
God Member
*****
Отсутствует


I Love YaBB 2!

Сообщений: 2906
Местоположение: Москва
Зарегистрирован: 26. Мая 2006
Пол: Мужской
Re: Движения одного документа у другого
Ответ #157 - 25. Ноября 2009 :: 13:41
Печать  
noxxx писал(а) 25. Ноября 2009 :: 13:31:
Значит конструкции типа НачатьТранзакцию(), ОткатитьТранзакцию() и ЗафиксироватьТранзакцию() тоже могут привести к такой ситуации?

Нет. Давайте мухи отдельно котлеты отдельно.
Мы этот случай до конца не разобрали, а Вы делаете неправильные обобщения.
  
Наверх
 
IP записан
 
Z1
God Member
*****
Отсутствует


I Love YaBB 2!

Сообщений: 2906
Местоположение: Москва
Зарегистрирован: 26. Мая 2006
Пол: Мужской
Re: Движения одного документа у другого
Ответ #158 - 25. Ноября 2009 :: 13:43
Печать  
(noxxx) (Noy) Может быть Вы приведете тестовый пример проведения из одного документа другого ( не для меня), а то может не все понимают о чем идет речь.
  
Наверх
 
IP записан
 
Z1
God Member
*****
Отсутствует


I Love YaBB 2!

Сообщений: 2906
Местоположение: Москва
Зарегистрирован: 26. Мая 2006
Пол: Мужской
Re: Движения одного документа у другого
Ответ #159 - 25. Ноября 2009 :: 14:12
Печать  
Noy писал(а) 25. Ноября 2009 :: 13:30:
noxxx, у меня тоже используется такая конструкция, и симптомы такие же.
Так что давай переписывать этот участок.
Z1, не совсем согласен с твоим предположением про "откат документа", но то что проблема во "вложенных" транзакциях - это факт, и не понимает их по всей видимости не sql, а сама 1С.
Предполагаю что происходит следующее:
открывается одна транзакция, внутри еще одна, а когда внутренняя транзакция закрывается, 1С снимает блокировки не дожидаясь завершения внешней транзакции - т.к. по логике работы 1С транзакция может быть только одна.

вот такое мое ИМХО.

Вложенные транзакции и их специфичная работа это так реализовано в MS sql

пример
begin tran
  update tabl1 set a = 1
  begin tran
  update tabl2 set b = 1
  rollback
commit
откатится и внешняя и внутренняя транзакции.
Можете найти это в книжках на сайтах или кто нибудь еще подтвердит.

В вашем случае не совсем понятно при проведении внутреннего документа создается ли   begin tran(его аналог) или нет(можно дажерассписать оба этих случая в обоих но по разному могут возникать большие проблемы).
В зависимости от этого в разных пограничных ситуациях Вы будете получать несогласованость данных в БД.
  
Наверх
 
IP записан
 
Noy
Junior Member
**
Отсутствует


1C++ rocks!

Сообщений: 41
Зарегистрирован: 07. Ноября 2009
Re: Движения одного документа у другого
Ответ #160 - 25. Ноября 2009 :: 14:20
Печать  
Z1 писал(а) 25. Ноября 2009 :: 13:43:
(noxxx) (Noy) Может быть Вы приведете тестовый пример проведения из одного документа другого ( не для меня), а то может не все понимают о чем идет речь.


Имеется ввиду код?
у меня примерно так:
ОбработкаПроведения()
ОткрытьФорму(связанныйДокумент,"Провести")
....


В форме документа "связанныйДокумент"
ПриОткрытии()
     Если Форма.Параметр="Провести" тогда
           Форма.ИспользоватьСлой("Проводка",2);
           провести(0);
           СтатусВозврата(0);
           Возврат;
     Конецесли;


Мы говорим об одном и том же?
  
Наверх
 
IP записан
 
Noy
Junior Member
**
Отсутствует


1C++ rocks!

Сообщений: 41
Зарегистрирован: 07. Ноября 2009
Re: Движения одного документа у другого
Ответ #161 - 25. Ноября 2009 :: 14:25
Печать  
Z1 писал(а) 25. Ноября 2009 :: 14:12:
В вашем случае не совсем понятно при проведении внутреннего документа создается ли   begin tran(его аналог) или нет(можно дажерассписать оба этих случая в обоих но по разному могут возникать большие проблемы).
В зависимости от этого в разных пограничных ситуациях Вы будете получать несогласованость данных в БД.


Тут проблема не в откате транзакции (думаю что при откате все как раз правильно отрабатывает). Проблема, что после завершения внутренней транзакции снимается блокировка с таблицы 1SUIDCTL и при этом не апдейтися до завершения внешней транзакции - и в этот промежуток другой сеанс цепляет из этой таблички тот же самый ID.
  
Наверх
 
IP записан
 
Z1
God Member
*****
Отсутствует


I Love YaBB 2!

Сообщений: 2906
Местоположение: Москва
Зарегистрирован: 26. Мая 2006
Пол: Мужской
Re: Движения одного документа у другого
Ответ #162 - 25. Ноября 2009 :: 14:34
Печать  
Noy писал(а) 25. Ноября 2009 :: 14:25:
Z1 писал(а) 25. Ноября 2009 :: 14:12:
В вашем случае не совсем понятно при проведении внутреннего документа создается ли   begin tran(его аналог) или нет(можно дажерассписать оба этих случая в обоих но по разному могут возникать большие проблемы).
В зависимости от этого в разных пограничных ситуациях Вы будете получать несогласованость данных в БД.

Тут проблема не в откате транзакции (думаю что при откате все как раз правильно отрабатывает). Проблема, что после завершения внутренней транзакции снимается блокировка с таблицы 1SUIDCTL и при этом не апдейтися до завершения внешней транзакции - и в этот промежуток другой сеанс цепляет из этой таблички тот же самый ID.

ты прав если не создается второй транзакции
begin tran ( или ее аналог ). (Т.е нет вообще вложенных транзакций)
я же написал это можно проверить либо разгребая профайлер
либо в начале модуля проведения внутреннего документа надо выполнить прямой запрос
select  @@trancount
Результат в студию (должно быть либо 2 либо 1 ).Тогда можно будет досконально расписать что происходит. Расписывать два варианта один из которых никогда не выполняется мне не хочется.

  
Наверх
 
IP записан
 
Z1
God Member
*****
Отсутствует


I Love YaBB 2!

Сообщений: 2906
Местоположение: Москва
Зарегистрирован: 26. Мая 2006
Пол: Мужской
Re: Движения одного документа у другого
Ответ #163 - 25. Ноября 2009 :: 14:36
Печать  
Noy писал(а) 25. Ноября 2009 :: 14:20:
Z1 писал(а) 25. Ноября 2009 :: 13:43:
(noxxx) (Noy) Может быть Вы приведете тестовый пример проведения из одного документа другого ( не для меня), а то может не все понимают о чем идет речь.


Имеется ввиду код?
у меня примерно так:
ОбработкаПроведения()
ОткрытьФорму(связанныйДокумент,"Провести")
....


В форме документа "связанныйДокумент"
ПриОткрытии()
     Если Форма.Параметр="Провести" тогда
           Форма.ИспользоватьСлой("Проводка",2);
           провести(0);
           СтатусВозврата(0);
           Возврат;
     Конецесли;


Мы говорим об одном и том же?

да об одном и том же.
  
Наверх
 
IP записан
 
Noy
Junior Member
**
Отсутствует


1C++ rocks!

Сообщений: 41
Зарегистрирован: 07. Ноября 2009
Re: Движения одного документа у другого
Ответ #164 - 25. Ноября 2009 :: 14:41
Печать  
Ладно, считаю что копать дальше не имеет смысла. Буду избавляться от таких конструкций. noxxx, рекомендую тебе тоже избавится от "двойного проведения", а через месяц отписаться сюда по результатам - я тоже "засвечусь".
Z1, спасибо за участие!
  
Наверх
 
IP записан
 
noxxx
Full Member
***
Отсутствует


1c++ rocks 8)

Сообщений: 239
Местоположение: Москва
Зарегистрирован: 24. Августа 2007
Пол: Мужской
Re: Движения одного документа у другого
Ответ #165 - 25. Ноября 2009 :: 14:44
Печать  
А как насчет НачатьТранзакцию()?
  
Наверх
ICQ  
IP записан
 
noxxx
Full Member
***
Отсутствует


1c++ rocks 8)

Сообщений: 239
Местоположение: Москва
Зарегистрирован: 24. Августа 2007
Пол: Мужской
Re: Движения одного документа у другого
Ответ #166 - 25. Ноября 2009 :: 14:45
Печать  
select @@trancount в модуле проведения первого документа возвращает 0, в модуле второго (внутреннего) возвращает 1
  
Наверх
ICQ  
IP записан
 
Noy
Junior Member
**
Отсутствует


1C++ rocks!

Сообщений: 41
Зарегистрирован: 07. Ноября 2009
Re: Движения одного документа у другого
Ответ #167 - 25. Ноября 2009 :: 14:49
Печать  
noxxx писал(а) 25. Ноября 2009 :: 14:44:
А как насчет НачатьТранзакцию()?

тут ты вряд ли такую проблему поймаешь
  
Наверх
 
IP записан
 
Z1
God Member
*****
Отсутствует


I Love YaBB 2!

Сообщений: 2906
Местоположение: Москва
Зарегистрирован: 26. Мая 2006
Пол: Мужской
Re: Движения одного документа у другого
Ответ #168 - 25. Ноября 2009 :: 14:51
Печать  
Noy писал(а) 25. Ноября 2009 :: 14:41:
Ладно, считаю что копать дальше не имеет смысла. Буду избавляться от таких конструкций. noxxx, рекомендую тебе тоже избавится от "двойного проведения", а через месяц отписаться сюда по результатам - я тоже "засвечусь".
Z1, спасибо за участие!

не за что.
(Noy)Вывод Вы по любому правильный сделали.
ну лучше сделайте Вам же пару строк написать что вернет select :
2 или 1 может кто нибудь еще наступит на эти грабли тогда надо будет разбираться сначала а так будет законченый результат всей картины.пока все в голове ( в кеше  Улыбка ) рссписать все очень легко.

Вывод
Также можно снова сказать что v77 - "неглючная"  Очень довольный
применение некоторых глючных пограничных возможностей не в счет.
  
Наверх
 
IP записан
 
Z1
God Member
*****
Отсутствует


I Love YaBB 2!

Сообщений: 2906
Местоположение: Москва
Зарегистрирован: 26. Мая 2006
Пол: Мужской
Re: Движения одного документа у другого
Ответ #169 - 25. Ноября 2009 :: 14:54
Печать  
noxxx писал(а) 25. Ноября 2009 :: 14:45:
select @@trancount в модуле проведения первого документа возвращает 0, в модуле второго (внутреннего) возвращает 1

непонятно почему первого 0 (может стоят флаги очистки движений)
а попробуйте тот же тест только этот select поставить после любого ВыполнитьДвижение...
  
Наверх
 
IP записан
 
noxxx
Full Member
***
Отсутствует


1c++ rocks 8)

Сообщений: 239
Местоположение: Москва
Зарегистрирован: 24. Августа 2007
Пол: Мужской
Re: Движения одного документа у другого
Ответ #170 - 25. Ноября 2009 :: 15:00
Печать  
Если первый документ проведен и он перепроводится, то выводится 1. Если он не проведен, то выводится 0.
  
Наверх
ICQ  
IP записан
 
Z1
God Member
*****
Отсутствует


I Love YaBB 2!

Сообщений: 2906
Местоположение: Москва
Зарегистрирован: 26. Мая 2006
Пол: Мужской
Re: Движения одного документа у другого
Ответ #171 - 25. Ноября 2009 :: 15:37
Печать  
Итак получается что нет никаких внутренних транзакций.
все происодит в одной транзакции
два случая ( в каждом два подслучия )
1.Внутренний документ успешно проводиться
завершается commit
В этом случае сразу же освобождаются все блокировки (таблица журналов,
таблица макс. номеров, таблицы шапок и многострч. частей видов документов
таблицы ra и rg затронутых регистров внутреним и внешним ( потому что он уже
движения откатил) документов.
т.е. очередной iddoc если внешний документ был новый подвисает в воздухе
если до окончания проведения внешнего документа кто-то займет очередной iddoc.
Далее если кто-то станет проводить документ затргивающий движения первого документа
то если этот-кто то не столкнеться на блокировке индекса
то вполне получим рассогласование таблиц ra и rg при этом в другую переф базу
все передадим правильно т.к. передаются только движения ra а они то правильные.
Также на отрезке до окончания первого проведения возможны взаимоблокировки по таблицам rg
 Далее внешний документ все таки провелся все ок.
 Внешний документ не провелся то в самом документе будем иметь ситуацию как будто
 документ провелся а самих движений не будет.При этом по любому у Вас ra
 и rg рассогласованы потому что при начали проведения мы все откатили.


2.Внутренний документ проводиться и проведение терпит неудачу rallback
 Внешний документ не запишется. Внутренний тоже.Все блокировки сеимаются.
 Далее будет зависеть как это обработает 1склиент.
 Если 1с выдаст прерывание по ошибке и остановит проведение внешнего документа то все хорошо.
 Если же 1с все равно будет и далее выполнять модуль проведения то получим
 откроется новая неявная транзакция все блокировки сняты и проблемы что могут из-за этого возникнуть смотри выше.
 Если внешняя проведение закончиться неудачей то все хорошо.
 Если внешнее проведение закончится хорошо то будем иметь
 внешний документ вид как будто нет движений в _1sjourn будут движения
 в ra движения будут одназначно получим рассогласование ra и rg потому
 что автосброс движений мы сначала учли а потом откатили.
При этом все в другую переф. базу передасться правильно.


(off) кто это прочитал тот молодец  Улыбка
  
Наверх
 
IP записан
 
noxxx
Full Member
***
Отсутствует


1c++ rocks 8)

Сообщений: 239
Местоположение: Москва
Зарегистрирован: 24. Августа 2007
Пол: Мужской
Re: Движения одного документа у другого
Ответ #172 - 25. Ноября 2009 :: 17:09
Печать  
Z1 писал(а) 25. Ноября 2009 :: 15:37:
Итак получается что нет никаких внутренних транзакций.
все происодит в одной транзакции
два случая ( в каждом два подслучия )
...
(off) кто это прочитал тот молодец  Улыбка


Попытаюсь осмыслить  Очень довольный
  
Наверх
ICQ  
IP записан
 
Noy
Junior Member
**
Отсутствует


1C++ rocks!

Сообщений: 41
Зарегистрирован: 07. Ноября 2009
Re: Движения одного документа у другого
Ответ #173 - 25. Ноября 2009 :: 17:34
Печать  
Z1 писал(а) 25. Ноября 2009 :: 15:37:
...то вполне получим рассогласование таблиц ra и rg при этом в другую переф базу все передадим правильно ...

даже не только ra и rg, но и как в последнем глюке у автора топика - рассогласования dh,dt,_1sjorn

Примерно это я и имел ввиду с самого начала, не хватало только выявить причину/фактор... вот и выявили.

Z1 писал(а) 25. Ноября 2009 :: 15:37:
(off) кто это прочитал тот молодец   Улыбка

ЗЫ я прочитал!  Очень довольный


Вообще зачетная тема, я с этим глюком уже давно смирился и бросил искать корни... а оказывается зря.
  
Наверх
 
IP записан
 
Noy
Junior Member
**
Отсутствует


1C++ rocks!

Сообщений: 41
Зарегистрирован: 07. Ноября 2009
Re: Движения одного документа у другого
Ответ #174 - 25. Ноября 2009 :: 17:37
Печать  
Z1 писал(а) 25. Ноября 2009 :: 15:37:
2.Внутренний документ проводиться и проведение терпит неудачу rallback...
 Если 1с выдаст прерывание по ошибке и остановит проведение внешнего документа то все хорошо.
 Если же 1с все равно будет и далее выполнять модуль проведения то получим
 откроется новая неявная транзакция все блокировки сняты и проблемы что могут из-за этого возникнуть смотри выше.


Тут точно могу сказать (проверено), что если внутренний док не проведется, то внешний тоже не проведется - тут 1С на высоте.
  
Наверх
 
IP записан
 
noxxx
Full Member
***
Отсутствует


1c++ rocks 8)

Сообщений: 239
Местоположение: Москва
Зарегистрирован: 24. Августа 2007
Пол: Мужской
Re: Движения одного документа у другого
Ответ #175 - 26. Ноября 2009 :: 06:35
Печать  
Мне кажется, что глюк с переходом из журнала в псевдодокумент - это глюк журнала. Сделал выгрузку/загрузку - все равно из журнала переходит в псевдодокумент.  Печаль
  
Наверх
ICQ  
IP записан
 
Z1
God Member
*****
Отсутствует


I Love YaBB 2!

Сообщений: 2906
Местоположение: Москва
Зарегистрирован: 26. Мая 2006
Пол: Мужской
Re: Движения одного документа у другого
Ответ #176 - 26. Ноября 2009 :: 07:05
Печать  
noxxx писал(а) 26. Ноября 2009 :: 06:35:
Мне кажется, что глюк с переходом из журнала в псевдодокумент - это глюк журнала. Сделал выгрузку/загрузку - все равно из журнала переходит в псевдодокумент.  Печаль

чем вам загрузка выгрузка поможет. если в таблицах ошибки ?
Загрузка выгрузка помогает если есть ошибки в индексах( я лично на sql c таким ни разу не сталкивался) уберет нулевые итоги в rg ну может быть чуть исправит таблицу перекресных ссылок.
Что такое пседводокумент я не совсем понимаю ?
  
Наверх
 
IP записан
 
noxxx
Full Member
***
Отсутствует


1c++ rocks 8)

Сообщений: 239
Местоположение: Москва
Зарегистрирован: 24. Августа 2007
Пол: Мужской
Re: Движения одного документа у другого
Ответ #177 - 26. Ноября 2009 :: 07:24
Печать  
Z1 писал(а) 26. Ноября 2009 :: 07:05:
Что такое пседводокумент я не совсем понимаю ?


Сорри за мазюльки, так положено у нас.

В журнале регистрации есть строка:

http://img406.imageshack.us/i/regjournalrow.png/

При щелчке по строке открывается такое вот:

http://img134.imageshack.us/i/pseudodoc1.png/

Данные из вот такого настоящего документа:

http://img109.imageshack.us/i/realdoc.png/
  
Наверх
ICQ  
IP записан
 
noxxx
Full Member
***
Отсутствует


1c++ rocks 8)

Сообщений: 239
Местоположение: Москва
Зарегистрирован: 24. Августа 2007
Пол: Мужской
Re: Движения одного документа у другого
Ответ #178 - 26. Ноября 2009 :: 09:42
Печать  
Z1, ну не молчите, как избавиться от этого "документа"? Кроме как через журнал регистрации в него попасть нельзя.
  
Наверх
ICQ  
IP записан
 
Z1
God Member
*****
Отсутствует


I Love YaBB 2!

Сообщений: 2906
Местоположение: Москва
Зарегистрирован: 26. Мая 2006
Пол: Мужской
Re: Движения одного документа у другого
Ответ #179 - 26. Ноября 2009 :: 09:51
Печать  
noxxx писал(а) 26. Ноября 2009 :: 09:42:
Z1, ну не молчите, как избавиться от этого "документа"? Кроме как через журнал регистрации в него попасть нельзя.

А что Вы от меня хотите услышать.
У Вас в базе нет целостности данных.

Почему это произошло мы общими усилиями выяснили ( железо не виновато).
Как Вы будете искать и исправлять все ошибке в Вашей базе я не знаю. Это Ваша задача.
Далее какие выводы сделали  и как Вы исправите ( и будете ли это вообще) алгоритмы 1с я тоже не знаю.
  
Наверх
 
IP записан
 
Noy
Junior Member
**
Отсутствует


1C++ rocks!

Сообщений: 41
Зарегистрирован: 07. Ноября 2009
Re: Движения одного документа у другого
Ответ #180 - 26. Ноября 2009 :: 10:08
Печать  
noxxx писал(а) 26. Ноября 2009 :: 09:42:
Z1, ну не молчите, как избавиться от этого "документа"? Кроме как через журнал регистрации в него попасть нельзя.


вычисляешь ID документа (_IDtiSTR(819018)+"CEN") и в QA грохаешь все записи с таким ID из  _1SCRDOC, _1SJOURN и всех DH,DT. На всякий случай еще можешь проверить в регистрах.

или просто грохаешь из _1SJOURN, а потом ТИИ - по идее 1С сама вычистит ссылки (в настройках - "очищать ссылки" или как-то так)
  
Наверх
 
IP записан
 
Z1
God Member
*****
Отсутствует


I Love YaBB 2!

Сообщений: 2906
Местоположение: Москва
Зарегистрирован: 26. Мая 2006
Пол: Мужской
Re: Движения одного документа у другого
Ответ #181 - 26. Ноября 2009 :: 10:21
Печать  
noxxx писал(а) 26. Ноября 2009 :: 09:42:
Z1, ну не молчите, как избавиться от этого "документа"? Кроме как через журнал регистрации в него попасть нельзя.

Наверное самое оптимальное для Вас (во всяком случае
что я бы делал). Данные пока не трогать. Срочно переписать алгоритмы и отладить программу.убедиться что проблем не возникает.
начать новую базу. Если это совместить с началом нового года то будет вообще хорошо а при переносе остатков уже не ты как программист а ответсвенные сотрудники проверят каждый свои остатки.

  
Наверх
 
IP записан
 
noxxx
Full Member
***
Отсутствует


1c++ rocks 8)

Сообщений: 239
Местоположение: Москва
Зарегистрирован: 24. Августа 2007
Пол: Мужской
Re: Движения одного документа у другого
Ответ #182 - 27. Ноября 2009 :: 08:56
Печать  
Убиться можно  Смущённый
Трассировка щелчка по строке журнала:
Код
Выбрать все
exec _1sp__1SJOURN_ByIDDOC '  HJYICEN'
go
exec sp_executesql N'Select * from DH39750(NOLOCK) where IDDOC=@P1',N'@P1 varchar(9)','  HJYICEN'
go
exec sp_executesql N'Select * from DT39750(NOLOCK) where IDDOC=@P1 order by IDDOC, LINENO_',N'@P1 varchar(9)','  HJYICEN'
go 


Нигде вообще нет упоминания о документе "Отказ". У меня такое ощущение, что просто протупливает движок 1С, открывая форму документа "Отказ".
  
Наверх
ICQ  
IP записан
 
noxxx
Full Member
***
Отсутствует


1c++ rocks 8)

Сообщений: 239
Местоположение: Москва
Зарегистрирован: 24. Августа 2007
Пол: Мужской
Re: Движения одного документа у другого
Ответ #183 - 30. Ноября 2009 :: 07:11
Печать  
Вобщем принято решение избавится от недокументированного куска кода и наблюдать за развитием событий. Будем надеяться, что это решит проблему  Нерешительный
  
Наверх
ICQ  
IP записан
 
Noy
Junior Member
**
Отсутствует


1C++ rocks!

Сообщений: 41
Зарегистрирован: 07. Ноября 2009
Re: Движения одного документа у другого
Ответ #184 - 03. Февраля 2010 :: 14:51
Печать  
noxxx писал(а) 30. Ноября 2009 :: 07:11:
Вобщем принято решение избавится от недокументированного куска кода и наблюдать за развитием событий. Будем надеяться, что это решит проблему  Нерешительный



Хотелось бы узнать результаты - проблема пропала?
  
Наверх
 
IP записан
 
Z1
God Member
*****
Отсутствует


I Love YaBB 2!

Сообщений: 2906
Местоположение: Москва
Зарегистрирован: 26. Мая 2006
Пол: Мужской
Re: Движения одного документа у другого
Ответ #185 - 04. Февраля 2010 :: 08:27
Печать  
Noy писал(а) 03. Февраля 2010 :: 14:51:
noxxx писал(а) 30. Ноября 2009 :: 07:11:
Вобщем принято решение избавится от недокументированного куска кода и наблюдать за развитием событий. Будем надеяться, что это решит проблему  Нерешительный



Хотелось бы узнать результаты - проблема пропала?

Ну я думаю хуже точно не будет.
Тут на пустом месте ошибки внутри 1с обнаруживаю,
а уж после этой ветки оставлять такой способ провести могут только камикадзе.


Хотелось бы также узнать у автора результаты.
  
Наверх
 
IP записан
 
noxxx
Full Member
***
Отсутствует


1c++ rocks 8)

Сообщений: 239
Местоположение: Москва
Зарегистрирован: 24. Августа 2007
Пол: Мужской
Re: Движения одного документа у другого
Ответ #186 - 05. Февраля 2010 :: 12:57
Печать  
Увы. Документы с чужими движениями периодически появляются.
Последний (вчерашний) случай:

Поступила заявка, мол, документ "Отказ" не проведен, а в отчете есть его движения. Смотрю записи в регистре - движение сделал документ "Списание денежных средств". Смотрю - действительно так.
Распровел оба документа - движение в регистре осталось!  Смущённый
Это просто жесть ПечальЗапрос SELECT * FROM [RA39822] WHERE [IDDOC] = '  JBOFCEN' по таблице RA39822 (Движения регистра "Отказ") дает строку при обоих непроведенных документах. Получается, что при распроведении документа "Списание ден. средств" эта таблица даже не просматривается, но почему тогда не создается еще одна запись от нужного документа при его проведении?
  
Наверх
ICQ  
IP записан
 
Z1
God Member
*****
Отсутствует


I Love YaBB 2!

Сообщений: 2906
Местоположение: Москва
Зарегистрирован: 26. Мая 2006
Пол: Мужской
Re: Движения одного документа у другого
Ответ #187 - 05. Февраля 2010 :: 13:05
Печать  
1.непонятно это в одной базе или двух
2.сообщите есть ли сейчас особенности проведение одного документа из другого.
3. Вы уверены что движения есть а это не ошибки
формирования отчета
4. На форуме есть мой отчет "проверьте Ваши регистры"

Возьмите его и запускайте каждый час или чаще
вышеупомянутую ошибку отчет точно найдет.
http://www.1cpp.ru/forum/YaBB.pl?num=1228926967/
ИХМО Лучше наверное начать новую  ветку  как бы с новой постановки проблемы.

кстати Ваш  ник с тремя xxx у нас на это браузеры закрыты (как и у многих )поэтому не могу написать Вам личное сообщение
  
Наверх
 
IP записан
 
noxxx
Full Member
***
Отсутствует


1c++ rocks 8)

Сообщений: 239
Местоположение: Москва
Зарегистрирован: 24. Августа 2007
Пол: Мужской
Re: Движения одного документа у другого
Ответ #188 - 05. Февраля 2010 :: 13:11
Печать  
1. В одной, в той, в которой изначально проводились документы. В дочке этой проблемы нет.
2. Проведения документов из другого документа нет.
3. Уверен, просто выборка запросом дает эту запись от неправильного документа.

Отчет сейчас прогоню. Новую ветку тоже создам как получу результат проверки отчетом.
  
Наверх
ICQ  
IP записан
 
noxxx
Full Member
***
Отсутствует


1c++ rocks 8)

Сообщений: 239
Местоположение: Москва
Зарегистрирован: 24. Августа 2007
Пол: Мужской
Re: Движения одного документа у другого
Ответ #189 - 05. Февраля 2010 :: 13:19
Печать  
Продолжение здесь: http://www.1cpp.ru/forum/YaBB.pl?num=1265375919

Z1, а есть возможность общаться по ICQ?
  
Наверх
ICQ  
IP записан
 
Z1
God Member
*****
Отсутствует


I Love YaBB 2!

Сообщений: 2906
Местоположение: Москва
Зарегистрирован: 26. Мая 2006
Пол: Мужской
Re: Движения одного документа у другого
Ответ #190 - 05. Февраля 2010 :: 13:19
Печать  
noxxx писал(а) 05. Февраля 2010 :: 13:11:
1. В одной, в той, в которой изначально проводились документы. В дочке этой проблемы нет.
2. Проведения документов из другого документа нет.
3. Уверен, просто выборка запросом дает эту запись от неправильного документа.

Отчет сейчас прогоню. Новую ветку тоже создам как получу результат проверки отчетом.

Тогда прогоните проверку регистров в обоих базах.

Может у Вас на основной базе есть еще и тригеры ???
  
Наверх
 
IP записан
 
noxxx
Full Member
***
Отсутствует


1c++ rocks 8)

Сообщений: 239
Местоположение: Москва
Зарегистрирован: 24. Августа 2007
Пол: Мужской
Re: Движения одного документа у другого
Ответ #191 - 05. Февраля 2010 :: 13:22
Печать  
Z1 писал(а) 05. Февраля 2010 :: 13:19:
Тогда прогоните проверку регистров в обоих базах.
Может у Вас на основной базе есть еще и тригеры ???


Триггеров нет, вы что Улыбка
  
Наверх
ICQ  
IP записан
 
Z1
God Member
*****
Отсутствует


I Love YaBB 2!

Сообщений: 2906
Местоположение: Москва
Зарегистрирован: 26. Мая 2006
Пол: Мужской
Re: Движения одного документа у другого
Ответ #192 - 05. Февраля 2010 :: 13:23
Печать  
noxxx писал(а) 05. Февраля 2010 :: 13:19:
Продолжение здесь: http://www.1cpp.ru/forum/YaBB.pl?num=1265375919

Z1, а есть возможность общаться по ICQ?


Аська у нас запрещена.
только укажи что ты это ты.
« Последняя редакция: 23. Апреля 2010 :: 05:51 - Z1 »  
Наверх
 
IP записан
 
noxxx
Full Member
***
Отсутствует


1c++ rocks 8)

Сообщений: 239
Местоположение: Москва
Зарегистрирован: 24. Августа 2007
Пол: Мужской
Re: Движения одного документа у другого
Ответ #193 - 05. Февраля 2010 :: 13:36
Печать  
Отписал
  
Наверх
ICQ  
IP записан
 
Z1
God Member
*****
Отсутствует


I Love YaBB 2!

Сообщений: 2906
Местоположение: Москва
Зарегистрирован: 26. Мая 2006
Пол: Мужской
Re: Движения одного документа у другого
Ответ #194 - 05. Февраля 2010 :: 13:42
Печать  
noxxx писал(а) 05. Февраля 2010 :: 13:36:
Отписал

Ответил
  
Наверх
 
IP записан
 
Z1
God Member
*****
Отсутствует


I Love YaBB 2!

Сообщений: 2906
Местоположение: Москва
Зарегистрирован: 26. Мая 2006
Пол: Мужской
Re: Движения одного документа у другого
Ответ #195 - 23. Апреля 2010 :: 05:54
Печать  
С помощью обработки ( пункт 7)
http://www.1cpp.ru/forum/YaBB.pl?num=1228926967
можно находить ошибки полученные автором в этой ветке
  
Наверх
 
IP записан
 
noxxx
Full Member
***
Отсутствует


1c++ rocks 8)

Сообщений: 239
Местоположение: Москва
Зарегистрирован: 24. Августа 2007
Пол: Мужской
Re: Движения одного документа у другого
Ответ #196 - 23. Апреля 2010 :: 06:33
Печать  
Огого! Пока я тут торможу, кое-кто работает!

Обязательно до п.7 запускать пп. 1 - 6? А то запустил сразу 7 :

Код
Выбрать все
делаем 7

Не смогли выполнить запрос для рег = select  * from (
select  iddoc,sum(actno)as val0 ,max(actno) as val1, (max(actno)*(max(actno) + 1))/2 as val2 ,((max(actno)*(max(actno) + 1))/2-sum(actno)) as val3   from (

select iddoc , actno from ra3887
union all
select iddoc , actno from ra3906
union all
select iddoc , actno from ra17104
union all
select iddoc , actno from ra3824
union all
select iddoc , actno from ra4001
union all
select iddoc , actno from ra4198
union all
select iddoc , actno from ra16558
union all
select iddoc , actno from ra4202
union all
select iddoc , actno from ra17080
union all
select iddoc , actno from ra15078
union all
select iddoc , actno from ra15141
union all
select iddoc , actno from ra16658
union all
select iddoc , actno from ra16665
union all
select iddoc , actno from ra17196
union all
select iddoc , actno from ra21375
union all
select iddoc , actno from ra32778
union all
select iddoc , actno from ra32794
union all
select iddoc , actno from ra32806
union all
select iddoc , actno from ra32812
union all
select iddoc , actno from ra32817
union all
select iddoc , actno from ra37038
union all
select iddoc , actno from ra38919
union all
select iddoc , actno from ra38973
union all
select iddoc , actno from ra39168
union all
select iddoc , actno from ra39181
union all
select iddoc , actno from ra39498
union all
select iddoc , actno from ra39822
union all
select iddoc , actno from ra40276
union all
select iddoc , actno from ra40323
 ) as x1 group by iddoc
) as x2
 inner join _1sjourn on _1sjourn.iddoc = x2.iddoc
 and  x2.val3 <> 0 

 Озадачен
  
Наверх
ICQ  
IP записан
 
Z1
God Member
*****
Отсутствует


I Love YaBB 2!

Сообщений: 2906
Местоположение: Москва
Зарегистрирован: 26. Мая 2006
Пол: Мужской
Re: Движения одного документа у другого
Ответ #197 - 23. Апреля 2010 :: 06:39
Печать  
можно сразу 7 запускать.
  
Наверх
 
IP записан
 
Z1
God Member
*****
Отсутствует


I Love YaBB 2!

Сообщений: 2906
Местоположение: Москва
Зарегистрирован: 26. Мая 2006
Пол: Мужской
Re: Движения одного документа у другого
Ответ #198 - 23. Апреля 2010 :: 06:44
Печать  
Может выложил промежуточную  версию
выкладываю еще раз
версия отчета должна быть  ver 1.9.02
  

________________________001.rar ( 10 KB | Загрузки )
Наверх
 
IP записан
 
noxxx
Full Member
***
Отсутствует


1c++ rocks 8)

Сообщений: 239
Местоположение: Москва
Зарегистрирован: 24. Августа 2007
Пол: Мужской
Re: Движения одного документа у другого
Ответ #199 - 23. Апреля 2010 :: 07:59
Печать  
А как расшифровывать результат?
"Проверка с 1 по 4" выдала:

     Сформировать 32 ПланПроизводстваПродукции  cast( rf32812 as int )                        
1      '  JEJPCEN'            Расходный кассовый ордер (расчеты) Мо-002605 (08.02.10)            
2      '  HSZJCEN'            Реализация АММ-021667 (26.11.09)            
3      '  JBOFCEN'            Списание ден. средств (расчеты) Мо-007381 (03.02.10)            
     Сформировать 32 Отказы  cast( rf39822 as int )                        
1      '  I121CEN'            Заявка от покупателя Ин-127983 (07.12.09)            
2      '  JEJPCEN'            Расходный кассовый ордер (расчеты) Мо-002605 (08.02.10)            
3      '  HSZJCEN'            Реализация АММ-021667 (26.11.09)            
4      '  JJ8MCEN'            Списание ден. средств (прочее) Мо-000465 (12.02.10)            
5      '  JBOFCEN'            Списание ден. средств (расчеты) Мо-007381 (03.02.10)            

Это что значит?
  
Наверх
ICQ  
IP записан
 
Z1
God Member
*****
Отсутствует


I Love YaBB 2!

Сообщений: 2906
Местоположение: Москва
Зарегистрирован: 26. Мая 2006
Пол: Мужской
Re: Движения одного документа у другого
Ответ #200 - 23. Апреля 2010 :: 08:17
Печать  
noxxx писал(а) 23. Апреля 2010 :: 07:59:
А как расшифровывать результат?
"Проверка с 1 по 4" выдала:

     Сформировать 32 ПланПроизводстваПродукции  cast( rf32812 as int )                        
1      '  JEJPCEN'            Расходный кассовый ордер (расчеты) Мо-002605 (08.02.10)            
2      '  HSZJCEN'            Реализация АММ-021667 (26.11.09)            
3      '  JBOFCEN'            Списание ден. средств (расчеты) Мо-007381 (03.02.10)            
     Сформировать 32 Отказы  cast( rf39822 as int )                        
1      '  I121CEN'            Заявка от покупателя Ин-127983 (07.12.09)            
2      '  JEJPCEN'            Расходный кассовый ордер (расчеты) Мо-002605 (08.02.10)            
3      '  HSZJCEN'            Реализация АММ-021667 (26.11.09)            
4      '  JJ8MCEN'            Списание ден. средств (прочее) Мо-000465 (12.02.10)            
5      '  JBOFCEN'            Списание ден. средств (расчеты) Мо-007381 (03.02.10)            

Это что значит?

Лучше запускай по каждой кнопке отдельно.
С каждой кнопкой  отдельно надо разбираться

7 в новой версии заработало ?
  
Наверх
 
IP записан
 
noxxx
Full Member
***
Отсутствует


1c++ rocks 8)

Сообщений: 239
Местоположение: Москва
Зарегистрирован: 24. Августа 2007
Пол: Мужской
Re: Движения одного документа у другого
Ответ #201 - 23. Апреля 2010 :: 08:20
Печать  
Z1 писал(а) 23. Апреля 2010 :: 08:17:
7 в новой версии заработало ?


Нет, так же выводит ошибку.

Ошибки выдаются в п. 3.2
  
Наверх
ICQ  
IP записан
 
Z1
God Member
*****
Отсутствует


I Love YaBB 2!

Сообщений: 2906
Местоположение: Москва
Зарегистрирован: 26. Мая 2006
Пол: Мужской
Re: Движения одного документа у другого
Ответ #202 - 23. Апреля 2010 :: 08:37
Печать  
noxxx писал(а) 23. Апреля 2010 :: 08:20:
Z1 писал(а) 23. Апреля 2010 :: 08:17:
7 в новой версии заработало ?


Нет, так же выводит ошибку.

Ошибки выдаются в п. 3.2

Давай сначала с 3.2 разберемся

3.2 означает что у документа есть движения
по  ra39822 а  флаг rf39822  сброшен.
Такой документ не сможешь перепровести должно произойти
дублирование  первичного ключа по ra39822 и вылет программы.

Скорее всего надо просто выставить флаг в rf39822 и все
либо второй вариант для этого документа движения ra39822
не нужны. Это тебе решать какая именно ошибка в этом документе.
Также посмотри этот документ и его движения в переф. базе.
  
Наверх
 
IP записан
 
Z1
God Member
*****
Отсутствует


I Love YaBB 2!

Сообщений: 2906
Местоположение: Москва
Зарегистрирован: 26. Мая 2006
Пол: Мужской
Re: Движения одного документа у другого
Ответ #203 - 23. Апреля 2010 :: 08:43
Печать  
(noxxx)
по поводу 7
у тебя qa есть и умеешь в нем работать ?
  
Наверх
 
IP записан
 
noxxx
Full Member
***
Отсутствует


1c++ rocks 8)

Сообщений: 239
Местоположение: Москва
Зарегистрирован: 24. Августа 2007
Пол: Мужской
Re: Движения одного документа у другого
Ответ #204 - 23. Апреля 2010 :: 08:48
Печать  
Как раз получается, что это все те документы, у которых "чужие" движения. Т.е. эти документы вообще не должны делать движений по этим регистрам. Перепроводятся они без проблем, т.к., по всей видимости, не пытаются сделать движения по этим регистрам.

Получается, что мне нужно удалить движения этих документов по этим регистрам?
  
Наверх
ICQ  
IP записан
 
noxxx
Full Member
***
Отсутствует


1c++ rocks 8)

Сообщений: 239
Местоположение: Москва
Зарегистрирован: 24. Августа 2007
Пол: Мужской
Re: Движения одного документа у другого
Ответ #205 - 23. Апреля 2010 :: 08:49
Печать  
Z1 писал(а) 23. Апреля 2010 :: 08:43:
(noxxx)
по поводу 7
у тебя qa есть и умеешь в нем работать ?

Умею работать с чем угодно Улыбка
  
Наверх
ICQ  
IP записан
 
berezdetsky
1c++ power user
Отсутствует


barba non facit sisadminum

Сообщений: 1986
Местоположение: Москва
Зарегистрирован: 19. Мая 2006
Пол: Мужской
Re: Движения одного документа у другого
Ответ #206 - 23. Апреля 2010 :: 08:49
Печать  
Z1 писал(а) 23. Апреля 2010 :: 08:43:
(noxxx)
по поводу 7
у тебя qa есть и умеешь в нем работать ?

Есичо, в запросе из #196 две ошибки.  Ужас
  

пароль как коньяк, чем больше звездочек, тем лучше
Наверх
IP записан
 
Z1
God Member
*****
Отсутствует


I Love YaBB 2!

Сообщений: 2906
Местоположение: Москва
Зарегистрирован: 26. Мая 2006
Пол: Мужской
Re: Движения одного документа у другого
Ответ #207 - 23. Апреля 2010 :: 08:50
Печать  
noxxx писал(а) 23. Апреля 2010 :: 08:48:
Как раз получается, что это все те документы, у которых "чужие" движения. Т.е. эти документы вообще не должны делать движений по этим регистрам. Перепроводятся они без проблем, т.к., по всей видимости, не пытаются сделать движения по этим регистрам.

Получается, что мне нужно удалить движения этих документов по этим регистрам?

Да и после этого пересчитать итоге с периода где произошла самая первая ошибка

PS Только пока не удаляй
если отладим 7( разберемся почему он в твоей конфе не работает ) он тоже должен найти эти ошибки
  
Наверх
 
IP записан
 
Z1
God Member
*****
Отсутствует


I Love YaBB 2!

Сообщений: 2906
Местоположение: Москва
Зарегистрирован: 26. Мая 2006
Пол: Мужской
Re: Движения одного документа у другого
Ответ #208 - 23. Апреля 2010 :: 08:55
Печать  
berezdetsky писал(а) 23. Апреля 2010 :: 08:49:
Z1 писал(а) 23. Апреля 2010 :: 08:43:
(noxxx)
по поводу 7
у тебя qa есть и умеешь в нем работать ?

Есичо, в запросе из #196 две ошибки.  Ужас

Какие ?
У меня в конфигурации отрабатывает.
Также работает в демо ТиС 9.2.955
  
Наверх
 
IP записан
 
noxxx
Full Member
***
Отсутствует


1c++ rocks 8)

Сообщений: 239
Местоположение: Москва
Зарегистрирован: 24. Августа 2007
Пол: Мужской
Re: Движения одного документа у другого
Ответ #209 - 23. Апреля 2010 :: 08:58
Печать  
У меня говорит "Column names in each table must be unique. Column name 'IDDOC' in table the query is specified more than once."
  
Наверх
ICQ  
IP записан
 
Z1
God Member
*****
Отсутствует


I Love YaBB 2!

Сообщений: 2906
Местоположение: Москва
Зарегистрирован: 26. Мая 2006
Пол: Мужской
Re: Движения одного документа у другого
Ответ #210 - 23. Апреля 2010 :: 09:04
Печать  
noxxx писал(а) 23. Апреля 2010 :: 08:58:
У меня говорит "Column names in each table must be unique. Column name 'IDDOC' in table the query is specified more than once."


Давай начнем отлаживать

Код
Выбрать все
select iddoc , actno from ra3887
 


Запрос выполняется ( сейчас важно что нет ошибок а не что он выдает ).

Кстати какая версия sql и sp ?
  
Наверх
 
IP записан
 
berezdetsky
1c++ power user
Отсутствует


barba non facit sisadminum

Сообщений: 1986
Местоположение: Москва
Зарегистрирован: 19. Мая 2006
Пол: Мужской
Re: Движения одного документа у другого
Ответ #211 - 23. Апреля 2010 :: 09:10
Печать  
Z1 писал(а) 23. Апреля 2010 :: 08:55:
berezdetsky писал(а) 23. Апреля 2010 :: 08:49:
Z1 писал(а) 23. Апреля 2010 :: 08:43:
(noxxx)
по поводу 7
у тебя qa есть и умеешь в нем работать ?

Есичо, в запросе из #196 две ошибки.  Ужас

Какие ?
У меня в конфигурации отрабатывает.
Также работает в демо ТиС 9.2.955

Не верю. Из x1 выбирается два поля, а группировка только по одному. Вторая ошибка логическая. На демо ТиС, может, и работает, но, в общем случае, ((max(actno)*(max(actno) + 1))/2-sum(actno)) может быть не равно нулю для корректно записанных документов.

И noxxx вот третью ошибку нашёл..  Подмигивание
  

пароль как коньяк, чем больше звездочек, тем лучше
Наверх
IP записан
 
Z1
God Member
*****
Отсутствует


I Love YaBB 2!

Сообщений: 2906
Местоположение: Москва
Зарегистрирован: 26. Мая 2006
Пол: Мужской
Re: Движения одного документа у другого
Ответ #212 - 23. Апреля 2010 :: 09:21
Печать  
berezdetsky писал(а) 23. Апреля 2010 :: 09:10:
Z1 писал(а) 23. Апреля 2010 :: 08:55:
berezdetsky писал(а) 23. Апреля 2010 :: 08:49:
Z1 писал(а) 23. Апреля 2010 :: 08:43:
(noxxx)
по поводу 7
у тебя qa есть и умеешь в нем работать ?

Есичо, в запросе из #196 две ошибки.  Ужас

Какие ?
У меня в конфигурации отрабатывает.
Также работает в демо ТиС 9.2.955

Не верю. Из x1 выбирается два поля, а группировка только по одному. Вторая ошибка логическая. На демо ТиС, может, и работает, но, в общем случае, ((max(actno)*(max(actno) + 1))/2-sum(actno)) может быть не равно нулю для корректно записанных документов.

И noxxx вот третью ошибку нашёл..  Подмигивание

по поводу х1 получается запрос
Код
Выбрать все
select  iddoc
	  ,sum(actno)as val0
	  ,max(actno) as val1
	  , (max(actno)*(max(actno) + 1))/2 as val2
	  ,((max(actno)*(max(actno) + 1))/2-sum(actno)) as val3  

from (
select iddoc , actno from ra3887
 ) as x1 group by iddoc
 


один iddoc  все остальные столбцы агрегаты.

Цитата:
но, в общем случае, ... не равны

Пример можно ?
  
Наверх
 
IP записан
 
noxxx
Full Member
***
Отсутствует


1c++ rocks 8)

Сообщений: 239
Местоположение: Москва
Зарегистрирован: 24. Августа 2007
Пол: Мужской
Re: Движения одного документа у другого
Ответ #213 - 23. Апреля 2010 :: 09:23
Печать  
Z1 писал(а) 23. Апреля 2010 :: 09:04:
Давай начнем отлаживать

Код
Выбрать все
select iddoc , actno from ra3887
 


Запрос выполняется ( сейчас важно что нет ошибок а не что он выдает ).

Кстати какая версия sql и sp ?


Microsoft SQL Server 2005 - 9.00.3080.00 (Intel X86)   Sep  6 2009 01:43:32   Copyright (c) 1988-2005 Microsoft Corporation  Enterprise Edition on Windows NT 5.2 (Build 3790: Service Pack 2)

Запрос выполняется, да.
  
Наверх
ICQ  
IP записан
 
Z1
God Member
*****
Отсутствует


I Love YaBB 2!

Сообщений: 2906
Местоположение: Москва
Зарегистрирован: 26. Мая 2006
Пол: Мужской
Re: Движения одного документа у другого
Ответ #214 - 23. Апреля 2010 :: 09:24
Печать  
Сейчас немного перепишу запрос чтобы имена не повторялись.
  
Наверх
 
IP записан
 
Z1
God Member
*****
Отсутствует


I Love YaBB 2!

Сообщений: 2906
Местоположение: Москва
Зарегистрирован: 26. Мая 2006
Пол: Мужской
Re: Движения одного документа у другого
Ответ #215 - 23. Апреля 2010 :: 09:26
Печать  
noxxx писал(а) 23. Апреля 2010 :: 09:23:
Z1 писал(а) 23. Апреля 2010 :: 09:04:
Давай начнем отлаживать

Код
Выбрать все
select iddoc , actno from ra3887
 


Запрос выполняется ( сейчас важно что нет ошибок а не что он выдает ).

Кстати какая версия sql и sp ?


Microsoft SQL Server 2005 - 9.00.3080.00 (Intel X86)   Sep  6 2009 01:43:32   Copyright (c) 1988-2005 Microsoft Corporation  Enterprise Edition on Windows NT 5.2 (Build 3790: Service Pack 2)

Запрос выполняется, да.

у меня sql200  sp3a.
  
Наверх
 
IP записан
 
berezdetsky
1c++ power user
Отсутствует


barba non facit sisadminum

Сообщений: 1986
Местоположение: Москва
Зарегистрирован: 19. Мая 2006
Пол: Мужской
Re: Движения одного документа у другого
Ответ #216 - 23. Апреля 2010 :: 09:27
Печать  
Z1 писал(а) 23. Апреля 2010 :: 09:21:
один iddoc  все остальные столбцы агрегаты.

oops..  Смущённый

Z1 писал(а) 23. Апреля 2010 :: 09:21:
Цитата:
но, в общем случае, ... не равны

Пример можно ?

Движения пишутся ещё в периодические реквизиты и в проводки, а счётчик движений - общий, на сколько я помню.
  

пароль как коньяк, чем больше звездочек, тем лучше
Наверх
IP записан
 
Z1
God Member
*****
Отсутствует


I Love YaBB 2!

Сообщений: 2906
Местоположение: Москва
Зарегистрирован: 26. Мая 2006
Пол: Мужской
Re: Движения одного документа у другого
Ответ #217 - 23. Апреля 2010 :: 09:31
Печать  
berezdetsky писал(а) 23. Апреля 2010 :: 09:27:
Z1 писал(а) 23. Апреля 2010 :: 09:21:
один iddoc  все остальные столбцы агрегаты.

oops..  Смущённый

Z1 писал(а) 23. Апреля 2010 :: 09:21:
Цитата:
но, в общем случае, ... не равны

Пример можно ?

Движения пишутся ещё в периодические реквизиты и в проводки, а счётчик движений - общий, на сколько я помню.


Проверю.

Но мое ИМХО я бы рекомендовал бы всем избавиться от
переодич. реквизитах двигаемых документами.
  
Наверх
 
IP записан
 
Z1
God Member
*****
Отсутствует


I Love YaBB 2!

Сообщений: 2906
Местоположение: Москва
Зарегистрирован: 26. Мая 2006
Пол: Мужской
Re: Движения одного документа у другого
Ответ #218 - 23. Апреля 2010 :: 10:56
Печать  
(noxxx) давай саму обработку я буду класть в ветку об обработке.
Здесь обсуждаем твой случай.
Сделал версию . Версия 1.9.03 - проверяй

У меня и 1.9.02 правильно отработала на sql2005.

Ответь у тебя документы двигают только регистры
или есть и регистры и проводки ?
  
Наверх
 
IP записан
 
noxxx
Full Member
***
Отсутствует


1c++ rocks 8)

Сообщений: 239
Местоположение: Москва
Зарегистрирован: 24. Августа 2007
Пол: Мужской
Re: Движения одного документа у другого
Ответ #219 - 23. Апреля 2010 :: 12:13
Печать  
1.9.03 - также не работает. Ошибка - "Arithmetic overflow error converting expression to data type int."
Документы двигают регистры и делают бух. проводки.
  
Наверх
ICQ  
IP записан
 
Z1
God Member
*****
Отсутствует


I Love YaBB 2!

Сообщений: 2906
Местоположение: Москва
Зарегистрирован: 26. Мая 2006
Пол: Мужской
Re: Движения одного документа у другого
Ответ #220 - 23. Апреля 2010 :: 12:27
Печать  
berezdetsky писал(а) 23. Апреля 2010 :: 09:27:
Z1 писал(а) 23. Апреля 2010 :: 09:21:
один iddoc  все остальные столбцы агрегаты.

oops..  Смущённый

Z1 писал(а) 23. Апреля 2010 :: 09:21:
Цитата:
но, в общем случае, ... не равны

Пример можно ?

Движения пишутся ещё в периодические реквизиты и в проводки, а счётчик движений - общий, на сколько я помню.


счетчик только по регистрам
сделал тест Документ двигает и проводки и Регистр
Модуль проведения
Код
Выбрать все
Процедура ОбработкаПроведения()
	ВыбратьСтроки();
	Пока ПолучитьСтроку() = 1 Цикл
		Если ПустоеЗначение(Товар) = 1 Тогда Продолжить; КонецЕсли;
		Операция.НоваяПроводка();
		Операция.Дебет.Счет =СчетПоКоду("00");
		Операция.Кредит.Счет =СчетПоКоду("41");
		Операция.Кредит.Товары =Товар;
		Операция.Сумма = Сумма;
		Операция.Количество = Колво;
		//Предупреждение("Ждем !!!");

		Регистр.ОстаткиТоваров.Товар = Товар;
		Регистр.ОстаткиТоваров.Колво = Колво;
		Регистр.ОстаткиТоваров.ДвижениеПриходВыполнить();
		Если НомерСтроки = 2 Тогда
			Регистр.ОстаткиТоваров.Товар = Товар;
			Регистр.ОстаткиТоваров.Колво = Колво * 100;
			Регистр.ОстаткиТоваров.ДвижениеПриходВыполнить();
		КонецЕсли;

	КонецЦикла;			  
	Операция.Записать();
КонецПроцедуры
 



В документе две строки
после проведения в RA
iddoc  lineno_ actno debkred    Товар колво
1        0         1       0              
1        0         2       0
1        0         3       0

В таблице _1sjourn у этого документа
поле  actcnt = 3



  

13.JPG ( 21 KB | Загрузки )
13.JPG
Наверх
 
IP записан
 
Z1
God Member
*****
Отсутствует


I Love YaBB 2!

Сообщений: 2906
Местоположение: Москва
Зарегистрирован: 26. Мая 2006
Пол: Мужской
Re: Движения одного документа у другого
Ответ #221 - 23. Апреля 2010 :: 12:30
Печать  
noxxx писал(а) 23. Апреля 2010 :: 12:13:
1.9.03 - также не работает. Ошибка - "Arithmetic overflow error converting expression to data type int."
Документы двигают регистры и делают бух. проводки.

Можешь сделать тетовую базу без документов на твоей конфигурации
После этого создай и проведи один документ содержащий регистр
и после этого запусти обработку.
  
Наверх
 
IP записан
 
Z1
God Member
*****
Отсутствует


I Love YaBB 2!

Сообщений: 2906
Местоположение: Москва
Зарегистрирован: 26. Мая 2006
Пол: Мужской
Re: Движения одного документа у другого
Ответ #222 - 23. Апреля 2010 :: 12:34
Печать  
(noxxx) Может у тебя есть ТиС 9.2 ?
Проверь обработку на ней.
  
Наверх
 
IP записан
 
noxxx
Full Member
***
Отсутствует


1c++ rocks 8)

Сообщений: 239
Местоположение: Москва
Зарегистрирован: 24. Августа 2007
Пол: Мужской
Re: Движения одного документа у другого
Ответ #223 - 23. Апреля 2010 :: 12:58
Печать  
Сделал пустую базу, сделал документ с регистрами и проводками. Запустил:

делаем 7

Колво строк = 0
ВсеОк
  
Наверх
ICQ  
IP записан
 
Z1
God Member
*****
Отсутствует


I Love YaBB 2!

Сообщений: 2906
Местоположение: Москва
Зарегистрирован: 26. Мая 2006
Пол: Мужской
Re: Движения одного документа у другого
Ответ #224 - 23. Апреля 2010 :: 13:07
Печать  
noxxx писал(а) 23. Апреля 2010 :: 12:58:
Сделал пустую базу, сделал документ с регистрами и проводками. Запустил:

делаем 7

Колво строк = 0
ВсеОк

Это значит что обработка правильно работает на тестовой базе.
Давай разбираться дальше с этим документом.
Сделай в этом документе 2 строки и сохрани и проведи его.
  
Наверх
 
IP записан
 
alexdd
Senior Member
****
Отсутствует


I Love YaBB 2!

Сообщений: 347
Зарегистрирован: 25. Июня 2007
Re: Движения одного документа у другого
Ответ #225 - 23. Апреля 2010 :: 13:23
Печать  
Z1 писал(а) 23. Апреля 2010 :: 12:27:
счетчик только по регистрам

и периодическим (_1sconst)
  
Наверх
 
IP записан
 
Z1
God Member
*****
Отсутствует


I Love YaBB 2!

Сообщений: 2906
Местоположение: Москва
Зарегистрирован: 26. Мая 2006
Пол: Мужской
Re: Движения одного документа у другого
Ответ #226 - 23. Апреля 2010 :: 13:25
Печать  
alexdd писал(а) 23. Апреля 2010 :: 13:23:
Z1 писал(а) 23. Апреля 2010 :: 12:27:
счетчик только по регистрам

и периодическим (_1sconst)

Могу проверить. Может напишешь здесь как их надо двигать в документе а то я не помню синтаксиса по ним.
  
Наверх
 
IP записан
 
alexdd
Senior Member
****
Отсутствует


I Love YaBB 2!

Сообщений: 347
Зарегистрирован: 25. Июня 2007
Re: Движения одного документа у другого
Ответ #227 - 23. Апреля 2010 :: 13:40
Печать  
Улыбка

УстановитьРеквизитСправочника(<?>,,,,,,);
Синтаксис:
>,<ДатаУстановки>,<ИмяТипа>,<Длина>,<Точность>)
  
Наверх
 
IP записан
 
Z1
God Member
*****
Отсутствует


I Love YaBB 2!

Сообщений: 2906
Местоположение: Москва
Зарегистрирован: 26. Мая 2006
Пол: Мужской
Re: Движения одного документа у другого
Ответ #228 - 23. Апреля 2010 :: 13:58
Печать  
alexdd писал(а) 23. Апреля 2010 :: 13:23:
Z1 писал(а) 23. Апреля 2010 :: 12:27:
счетчик только по регистрам

и периодическим (_1sconst)

Переодичские значения справочников учитываются в общем количестве движений
Вот модуль проведения
Код
Выбрать все
Процедура ОбработкаПроведения()
	Спр1 = СоздатьОбъект("Справочник.Скидка");
	ФлСкидка =Спр1.НайтиПоКоду("1",0);
	Если ФлСкидка <= 0 Тогда
		Сообщить("ОШИБКА Не нашли элемент скидка !!!");
	КонецЕсли;
	ВыбратьСтроки();
	Пока ПолучитьСтроку() = 1 Цикл
		Если ПустоеЗначение(Товар) = 1 Тогда Продолжить; КонецЕсли;
		Операция.НоваяПроводка();
		Операция.Дебет.Счет =СчетПоКоду("00");
		Операция.Кредит.Счет =СчетПоКоду("41");
		Операция.Кредит.Товары =Товар;
		Операция.Сумма = Сумма;
		Операция.Количество = Колво;
		//Предупреждение("Ждем !!!");

		Регистр.ОстаткиТоваров.Товар = Товар;
		Регистр.ОстаткиТоваров.Колво = Колво;
		Регистр.ОстаткиТоваров.ДвижениеПриходВыполнить();
		Если НомерСтроки = 2 Тогда
			Если ФлСкидка  > 0 Тогда
				УстановитьРеквизитСправочника(Спр1.ТекущийЭлемент(),"ЦенаСкидки",777,,,,);
			КонецЕсли;

			Регистр.ОстаткиТоваров.Товар = Товар;
			Регистр.ОстаткиТоваров.Колво = Колво * 100;
			Регистр.ОстаткиТоваров.ДвижениеПриходВыполнить();
		КонецЕсли;

	КонецЦикла;			  
	Операция.Записать();
КонецПроцедуры
 



В документе две строки
после проведения в RA
iddoc  lineno_ actno debkred    Товар колво
1        0         1       0              
1        0         2       0
1        0         4       0

В таблице _1sjourn у этого документа
поле  actcnt = 4

В таблице _1sconst
docid = 1  actno = 3  lineno_ = 0

Так что придеться менять обработку чтобы это учесть

Сейчас запустил на этой базе обработку 1.9.03
правильное проведение воспринялось как неправильное потому что сейчас нет учета переодических элементов двигаемых документом.


запустил на этой базе обработку 1.9.04
Все правильно отрабатывается


  
Наверх
 
IP записан
 
Z1
God Member
*****
Отсутствует


I Love YaBB 2!

Сообщений: 2906
Местоположение: Москва
Зарегистрирован: 26. Мая 2006
Пол: Мужской
Re: Движения одного документа у другого
Ответ #229 - 28. Апреля 2010 :: 05:10
Печать  
noxxx писал(а) 23. Апреля 2010 :: 12:13:
1.9.03 - также не работает. Ошибка - "Arithmetic overflow error converting expression to data type int."
Документы двигают регистры и делают бух. проводки.

Ну что удалось что нибудь сделать с базой ?
Бери последнюю версию 1.9.05 ( в ней учтены замечания и добавлены новые контроли пункт 7 значительно расширен ).

  
Наверх
 
IP записан
 
noxxx
Full Member
***
Отсутствует


1c++ rocks 8)

Сообщений: 239
Местоположение: Москва
Зарегистрирован: 24. Августа 2007
Пол: Мужской
Re: Движения одного документа у другого
Ответ #230 - 28. Апреля 2010 :: 05:46
Печать  
Прошу прощения за задержки с ответами.
Сделал в чистой базе две строки в документе - обработка отработала верно.
Запустил 1.9.05:
7.1 Ок
7.2 Ок
7.3 - 25 ошибок. Преобладают в основном документы "Закрытие месяца". Что это и как это лечить?
7.4 - как и в прошлый раз выдает ошибку.
  
Наверх
ICQ  
IP записан
 
Z1
God Member
*****
Отсутствует


I Love YaBB 2!

Сообщений: 2906
Местоположение: Москва
Зарегистрирован: 26. Мая 2006
Пол: Мужской
Re: Движения одного документа у другого
Ответ #231 - 28. Апреля 2010 :: 06:00
Печать  
Для одного документа где выдает ошибки выведи здесь все ACTNO
всех движений этого документа.

для 7.4 либо сюда запиши точно какая ошибка либо сюда ошибку помести через  картинку. Даже не представляю как такое может быть.
  
Наверх
 
IP записан
 
noxxx
Full Member
***
Отсутствует


1c++ rocks 8)

Сообщений: 239
Местоположение: Москва
Зарегистрирован: 24. Августа 2007
Пол: Мужской
Re: Движения одного документа у другого
Ответ #232 - 28. Апреля 2010 :: 06:28
Печать  
Для одного из документов (двигает только периодические реквизиты) Перемещение ОС:

Код
Выбрать все
all_iddoc	all_actno
  GXTTCEN	27
  GXTTCEN	28
  GXTTCEN	29
  GXTTCEN	30
  GXTTCEN	31
  GXTTCEN	32
  GXTTCEN	33
  GXTTCEN	34
  GXTTCEN	35
  GXTTCEN	36
  GXTTCEN	37
  GXTTCEN	38
  GXTTCEN	39
  GXTTCEN	53
  GXTTCEN	54
  GXTTCEN	55
  GXTTCEN	56
  GXTTCEN	57
  GXTTCEN	58
  GXTTCEN	59
  GXTTCEN	60
  GXTTCEN	61
  GXTTCEN	62
  GXTTCEN	63
  GXTTCEN	64
  GXTTCEN	65
 



Для другого - Расходный кассовый ордер (регистры+проводки):
Код
Выбрать все
all_iddoc	all_actno
  JEJPCEN	1
  JEJPCEN	3
  JEJPCEN	2
  JEJPCEN	1
  JEJPCEN	2
  JEJPCEN	3
 




Когда делаем 7.4, обработка говорит:
Код
Выбрать все
Не смогли выполнить запрос для рег = select  * from (
select  all_iddoc,sum(all_actno)as val0 ,min(all_actno) as val1, max(all_actno) as val2 ,( (max(all_actno) + min(all_actno))*(max(all_actno) - min(all_actno) + 1 )/2  -sum(all_actno) ) as val3   from (
select docid as all_iddoc, actno  as all_actno from _1sconst  where docid <> '     0   '
union all
select iddoc , actno from ra3887
union all
select iddoc , actno from ra3906
union all
select iddoc , actno from ra17104
union all
select iddoc , actno from ra3824
union all
select iddoc , actno from ra4001
union all
select iddoc , actno from ra4198
union all
select iddoc , actno from ra16558
union all
select iddoc , actno from ra4202
union all
select iddoc , actno from ra17080
union all
select iddoc , actno from ra15078
union all
select iddoc , actno from ra15141
union all
select iddoc , actno from ra16658
union all
select iddoc , actno from ra16665
union all
select iddoc , actno from ra17196
union all
select iddoc , actno from ra21375
union all
select iddoc , actno from ra32778
union all
select iddoc , actno from ra32794
union all
select iddoc , actno from ra32806
union all
select iddoc , actno from ra32812
union all
select iddoc , actno from ra32817
union all
select iddoc , actno from ra37038
union all
select iddoc , actno from ra38919
union all
select iddoc , actno from ra38973
union all
select iddoc , actno from ra39168
union all
select iddoc , actno from ra39181
union all
select iddoc , actno from ra39498
union all
select iddoc , actno from ra39822
union all
select iddoc , actno from ra40276
union all
select iddoc , actno from ra40323
 ) as x1 group by all_iddoc
) as x2
 inner join _1sjourn on _1sjourn.iddoc = x2.all_iddoc
 and  x2.val3 <> 0 



Если этот код выполнить в консоли запросов, в ответ получаем " State 22003, native 8115, message [Microsoft][ODBC SQL Server Driver][SQL Server]Arithmetic overflow error converting expression to data type int."
  
Наверх
ICQ  
IP записан
 
Z1
God Member
*****
Отсутствует


I Love YaBB 2!

Сообщений: 2906
Местоположение: Москва
Зарегистрирован: 26. Мая 2006
Пол: Мужской
Re: Движения одного документа у другого
Ответ #233 - 28. Апреля 2010 :: 06:45
Печать  
для пункта 7.4 в qa попробуй
вместо
(max(all_actno) + min(all_actno))*(max(all_actno) - min(all_actno) + 1 )/2

поставить
cast ( (max(all_actno) + min(all_actno))*(max(all_actno) - min(all_actno) + 1 )/2  as int)
  
Наверх
 
IP записан
 
noxxx
Full Member
***
Отсутствует


1c++ rocks 8)

Сообщений: 239
Местоположение: Москва
Зарегистрирован: 24. Августа 2007
Пол: Мужской
Re: Движения одного документа у другого
Ответ #234 - 28. Апреля 2010 :: 06:48
Печать  
Z1 писал(а) 28. Апреля 2010 :: 06:45:
для пункта 7.4 в qa попробуй
вместо
(max(all_actno) + min(all_actno))*(max(all_actno) - min(all_actno) + 1 )/2

поставить
cast ( (max(all_actno) + min(all_actno))*(max(all_actno) - min(all_actno) + 1 )/2  as int)


То же самое
  
Наверх
ICQ  
IP записан
 
Z1
God Member
*****
Отсутствует


I Love YaBB 2!

Сообщений: 2906
Местоположение: Москва
Зарегистрирован: 26. Мая 2006
Пол: Мужской
Re: Движения одного документа у другого
Ответ #235 - 28. Апреля 2010 :: 06:52
Печать  
А что происходит если проверки запустить на переф базе ?
  
Наверх
 
IP записан
 
Z1
God Member
*****
Отсутствует


I Love YaBB 2!

Сообщений: 2906
Местоположение: Москва
Зарегистрирован: 26. Мая 2006
Пол: Мужской
Re: Движения одного документа у другого
Ответ #236 - 28. Апреля 2010 :: 06:55
Печать  
для all_iddoc      all_actno
  JEJPCEN      1
  JEJPCEN      3
  JEJPCEN      2
  JEJPCEN      1
  JEJPCEN      2
  JEJPCEN      3
добавь еще lineno_
  
Наверх
 
IP записан
 
Z1
God Member
*****
Отсутствует


I Love YaBB 2!

Сообщений: 2906
Местоположение: Москва
Зарегистрирован: 26. Мая 2006
Пол: Мужской
Re: Движения одного документа у другого
Ответ #237 - 28. Апреля 2010 :: 07:02
Печать  
Ситуацию как в #236 я у себя смоделировал так
У документа две строки
                      ACTNO  LINENO_
Движ1  + 10     1            1
Движ1  + 15     2            2
Добавил текст в модуль проведения
           
           Колво_Х = Колво_Х + 1;
           ПривязыватьСтроку(НомерСтроки);
           Если Колво_Х = 2 Тогда
                 Сообщить("12345 777 Отменяем Транзакцию !!!");
                 rc = СоздатьОбъект("ODBCRecordSet");
               rc.ВыполнитьСкалярный("rollback");
                 ПривязыватьСтроку(НомерСтроки + 100); // Без этой строки 1с валиться на уникальности индекса по таблице ra primary key
           КонецЕсли;
               Сделал движение

После этого получил в ra
                      ACTNO  LINENO_
Движ1  + 10     1            1
Движ1  + 15     2            2
Движ1  + 15     2            102

Т.е. roolback вернул старые движения и так как модуль не остановился то добавилось еще и движение по второй строке.
в rg после этого естественно мусор по этим измерениям начиная с периода документа.

  
Наверх
 
IP записан
 
noxxx
Full Member
***
Отсутствует


1c++ rocks 8)

Сообщений: 239
Местоположение: Москва
Зарегистрирован: 24. Августа 2007
Пол: Мужской
Re: Движения одного документа у другого
Ответ #238 - 28. Апреля 2010 :: 07:11
Печать  
Z1 писал(а) 28. Апреля 2010 :: 06:55:
для all_iddoc      all_actno
 JEJPCEN      1
 JEJPCEN      3
 JEJPCEN      2
 JEJPCEN      1
 JEJPCEN      2
 JEJPCEN      3
добавь еще lineno_


Код
Выбрать все
docid	actno	lineno_
  JEJPCEN	1	0
  JEJPCEN	3	0
  JEJPCEN	2	0
  JEJPCEN	1	0
  JEJPCEN	2	0
  JEJPCEN	3	0
 

  
Наверх
ICQ  
IP записан
 
noxxx
Full Member
***
Отсутствует


1c++ rocks 8)

Сообщений: 239
Местоположение: Москва
Зарегистрирован: 24. Августа 2007
Пол: Мужской
Re: Движения одного документа у другого
Ответ #239 - 28. Апреля 2010 :: 07:14
Печать  
Z1 писал(а) 28. Апреля 2010 :: 07:02:
Т.е. roolback вернул старые движения и так как модуль не остановился то добавилось еще и движение по второй строке.
в rg после этого естественно мусор по этим измерениям начиная с периода документа.


Этот роллбэк откуда берется, если его нет в модуле?
Сейчас запустил на периферийной базе обработку - посмотрим что скажет там.
  
Наверх
ICQ  
IP записан
 
Z1
God Member
*****
Отсутствует


I Love YaBB 2!

Сообщений: 2906
Местоположение: Москва
Зарегистрирован: 26. Мая 2006
Пол: Мужской
Re: Движения одного документа у другого
Ответ #240 - 28. Апреля 2010 :: 07:14
Печать  
Для поиска переполнения ( пункт 7.4 )
выполни в qa

select max(actcnt) from _1sjourn

результат сообщи здесь.
  
Наверх
 
IP записан
 
Z1
God Member
*****
Отсутствует


I Love YaBB 2!

Сообщений: 2906
Местоположение: Москва
Зарегистрирован: 26. Мая 2006
Пол: Мужской
Re: Движения одного документа у другого
Ответ #241 - 28. Апреля 2010 :: 07:17
Печать  
noxxx писал(а) 28. Апреля 2010 :: 07:14:
Z1 писал(а) 28. Апреля 2010 :: 07:02:
Т.е. roolback вернул старые движения и так как модуль не остановился то добавилось еще и движение по второй строке.
в rg после этого естественно мусор по этим измерениям начиная с периода документа.


Этот роллбэк откуда берется, если его нет в модуле?


если в модуле проведения  записываем, проводим другой документ и при этом могла возникнуть
ситуация откат транзакции( вроде уже обсуждали на протяжении ветки)
  
Наверх
 
IP записан
 
noxxx
Full Member
***
Отсутствует


1c++ rocks 8)

Сообщений: 239
Местоположение: Москва
Зарегистрирован: 24. Августа 2007
Пол: Мужской
Re: Движения одного документа у другого
Ответ #242 - 28. Апреля 2010 :: 07:21
Печать  
В периферийке на 7.3 20 документов с ошибками, а 7.4 так же не запускается
  
Наверх
ICQ  
IP записан
 
Z1
God Member
*****
Отсутствует


I Love YaBB 2!

Сообщений: 2906
Местоположение: Москва
Зарегистрирован: 26. Мая 2006
Пол: Мужской
Re: Движения одного документа у другого
Ответ #243 - 28. Апреля 2010 :: 07:29
Печать  
noxxx писал(а) 28. Апреля 2010 :: 07:11:
Z1 писал(а) 28. Апреля 2010 :: 06:55:
для all_iddoc      all_actno
 JEJPCEN      1
 JEJPCEN      3
 JEJPCEN      2
 JEJPCEN      1
 JEJPCEN      2
 JEJPCEN      3
добавь еще lineno_


Код
Выбрать все
docid	actno	lineno_
  JEJPCEN	1	0
  JEJPCEN	3	0
  JEJPCEN	2	0
  JEJPCEN	1	0
  JEJPCEN	2	0
  JEJPCEN	3	0
 



не такого я не знаю как добиться
потому что  IDDOC,LINENO_, ACTNO есть primary key
Попробуй возьми копию бд и попробуй продублировать любую строку в ra (через qa) по этому регистру

Кстати можно тогда еще проверку написать что в ra  дубли
IDDOC,LINENO_, ACTNO ( невозможное - возможно )

  
Наверх
 
IP записан
 
Z1
God Member
*****
Отсутствует


I Love YaBB 2!

Сообщений: 2906
Местоположение: Москва
Зарегистрирован: 26. Мая 2006
Пол: Мужской
Re: Движения одного документа у другого
Ответ #244 - 28. Апреля 2010 :: 07:40
Печать  
noxxx писал(а) 28. Апреля 2010 :: 07:21:
В периферийке на 7.3 20 документов с ошибками, а 7.4 так же не запускается


Кстати насчет пропусков в actno. какой либо регистр не удалялся?
Если удалятся то я не знаю как в этом случае действует 1с
( я бы на месте разработчиков не трогал бы actno, actcnt)
Но тогда если этот документ перепровести ( если это не протеворечит учету ) то  actno и actcnt должны восстановиться у этого док.
  
Наверх
 
IP записан
 
noxxx
Full Member
***
Отсутствует


1c++ rocks 8)

Сообщений: 239
Местоположение: Москва
Зарегистрирован: 24. Августа 2007
Пол: Мужской
Re: Движения одного документа у другого
Ответ #245 - 28. Апреля 2010 :: 07:40
Печать  
Дело-то в том, что эти движения в разных таблицах ra.
  
Наверх
ICQ  
IP записан
 
Z1
God Member
*****
Отсутствует


I Love YaBB 2!

Сообщений: 2906
Местоположение: Москва
Зарегистрирован: 26. Мая 2006
Пол: Мужской
Re: Движения одного документа у другого
Ответ #246 - 28. Апреля 2010 :: 07:41
Печать  
noxxx писал(а) 28. Апреля 2010 :: 07:40:
Дело-то в том, что эти движения в разных таблицах ra.

Тогда понятно. Я зациклился на своем тесте из #237 ( там все в одном
регистре ).

Тогда получается так
раньше были движения
1,2,3 по регистру R1
когда перепроводил документ логика документа уже изменилась
скажем документ стал двигать R2
произошел откат  транзакции и получили
1,2,3 по регистру R1 ( из-за отката транзакции )
1,2,3 по регистру R2 ( текущие движения документа )
  
Наверх
 
IP записан
 
noxxx
Full Member
***
Отсутствует


1c++ rocks 8)

Сообщений: 239
Местоположение: Москва
Зарегистрирован: 24. Августа 2007
Пол: Мужской
Re: Движения одного документа у другого
Ответ #247 - 28. Апреля 2010 :: 07:42
Печать  
Z1 писал(а) 28. Апреля 2010 :: 07:14:
Для поиска переполнения ( пункт 7.4 )
выполни в qa

select max(actcnt) from _1sjourn

результат сообщи здесь.


161785
  
Наверх
ICQ  
IP записан
 
noxxx
Full Member
***
Отсутствует


1c++ rocks 8)

Сообщений: 239
Местоположение: Москва
Зарегистрирован: 24. Августа 2007
Пол: Мужской
Re: Движения одного документа у другого
Ответ #248 - 28. Апреля 2010 :: 07:49
Печать  
Z1 писал(а) 28. Апреля 2010 :: 07:40:
noxxx писал(а) 28. Апреля 2010 :: 07:21:
В периферийке на 7.3 20 документов с ошибками, а 7.4 так же не запускается


Кстати насчет пропусков в actno. какой либо регистр не удалялся?
Если удалятся то я не знаю как в этом случае действует 1с
( я бы на месте разработчиков не трогал бы actno, actcnt)
Но тогда если этот документ перепровести ( если это не протеворечит учету ) то  actno и actcnt должны восстановиться у этого док.


Судя по всему, ошибка такая тянется еще с 2007 года, а я в то время здесь не работал. Используемые регистры при мне не удалялись. База обрезалась в начале 2007 года.
  
Наверх
ICQ  
IP записан
 
Z1
God Member
*****
Отсутствует


I Love YaBB 2!

Сообщений: 2906
Местоположение: Москва
Зарегистрирован: 26. Мая 2006
Пол: Мужской
Re: Движения одного документа у другого
Ответ #249 - 28. Апреля 2010 :: 07:53
Печать  
noxxx писал(а) 28. Апреля 2010 :: 07:42:
Z1 писал(а) 28. Апреля 2010 :: 07:14:
Для поиска переполнения ( пункт 7.4 )
выполни в qa

select max(actcnt) from _1sjourn

результат сообщи здесь.


161785

Ошибку исправлю чтобы не было переполнения
но получается что у этого документа 161 тысяча движений.
Это соответствует действительности ?
  
Наверх
 
IP записан
 
noxxx
Full Member
***
Отсутствует


1c++ rocks 8)

Сообщений: 239
Местоположение: Москва
Зарегистрирован: 24. Августа 2007
Пол: Мужской
Re: Движения одного документа у другого
Ответ #250 - 28. Апреля 2010 :: 08:04
Печать  
По регистрам так и есть  Ужас
  
Наверх
ICQ  
IP записан
 
Z1
God Member
*****
Отсутствует


I Love YaBB 2!

Сообщений: 2906
Местоположение: Москва
Зарегистрирован: 26. Мая 2006
Пол: Мужской
Re: Движения одного документа у другого
Ответ #251 - 28. Апреля 2010 :: 08:20
Печать  
Проверяй пункт 7.4 с помощью новой версии 1.9.06
т.е. программа не должна падать но покажет ошибки.

сравни 7.3 и 7.4 Если ошибки одинаковые то это лучше чем если ошибки разные.
  
Наверх
 
IP записан
 
noxxx
Full Member
***
Отсутствует


1c++ rocks 8)

Сообщений: 239
Местоположение: Москва
Зарегистрирован: 24. Августа 2007
Пол: Мужской
Re: Движения одного документа у другого
Ответ #252 - 28. Апреля 2010 :: 08:30
Печать  
Версия 1.9.06, ошибка та же:
State 22003, native 8115, message [Microsoft][ODBC SQL Server Driver][SQL Server]Arithmetic overflow error converting expression to data type int.
Да и вроде не на касты ругается.

UPD: запрос заработал после замены sum(all_actno) as val0 на sum(cast(all_actno as bigint))as val0
  
Наверх
ICQ  
IP записан
 
Z1
God Member
*****
Отсутствует


I Love YaBB 2!

Сообщений: 2906
Местоположение: Москва
Зарегистрирован: 26. Мая 2006
Пол: Мужской
Re: Движения одного документа у другого
Ответ #253 - 28. Апреля 2010 :: 08:55
Печать  
noxxx писал(а) 28. Апреля 2010 :: 08:30:
Версия 1.9.06, ошибка та же:
State 22003, native 8115, message [Microsoft][ODBC SQL Server Driver][SQL Server]Arithmetic overflow error converting expression to data type int.
Да и вроде не на касты ругается.

UPD: запрос заработал после замены sum(all_actno) as val0 на sum(cast(all_actno as bigint))as val0

исправил
там уже столбец val0 не нужен.
версия 1.9.07
  
Наверх
 
IP записан
 
noxxx
Full Member
***
Отсутствует


1c++ rocks 8)

Сообщений: 239
Местоположение: Москва
Зарегистрирован: 24. Августа 2007
Пол: Мужской
Re: Движения одного документа у другого
Ответ #254 - 28. Апреля 2010 :: 08:55
Печать  
Вобщем результаты 7.3 и 7.4 отличаются лишь одним документом. У 7.4 одного документа в ошибках нет. А так и там и там одно и то же.
  
Наверх
ICQ  
IP записан
 
Z1
God Member
*****
Отсутствует


I Love YaBB 2!

Сообщений: 2906
Местоположение: Москва
Зарегистрирован: 26. Мая 2006
Пол: Мужской
Re: Движения одного документа у другого
Ответ #255 - 28. Апреля 2010 :: 08:58
Печать  
noxxx писал(а) 28. Апреля 2010 :: 08:55:
Вобщем результаты 7.3 и 7.4 отличаются лишь одним документом. У 7.4 одного документа в ошибках нет. А так и там и там одно и то же.

Ну это означает что при проведении именно этих документов были какие-то проблемы
Попробуй на тестовой базе перепроведи один из этих документов и посмотри уйдут ли из него ошибки.
  
Наверх
 
IP записан
 
noxxx
Full Member
***
Отсутствует


1c++ rocks 8)

Сообщений: 239
Местоположение: Москва
Зарегистрирован: 24. Августа 2007
Пол: Мужской
Re: Движения одного документа у другого
Ответ #256 - 28. Апреля 2010 :: 09:10
Печать  
Z1 писал(а) 28. Апреля 2010 :: 08:58:
noxxx писал(а) 28. Апреля 2010 :: 08:55:
Вобщем результаты 7.3 и 7.4 отличаются лишь одним документом. У 7.4 одного документа в ошибках нет. А так и там и там одно и то же.

Ну это означает что при проведении именно этих документов были какие-то проблемы
Попробуй на тестовой базе перепроведи один из этих документов и посмотри уйдут ли из него ошибки.


После перепроведения документа он так и остался в обоих тестах в ошибках.
У этого документа есть одно "не его" движение.
  
Наверх
ICQ  
IP записан
 
Z1
God Member
*****
Отсутствует


I Love YaBB 2!

Сообщений: 2906
Местоположение: Москва
Зарегистрирован: 26. Мая 2006
Пол: Мужской
Re: Движения одного документа у другого
Ответ #257 - 28. Апреля 2010 :: 09:17
Печать  
noxxx писал(а) 28. Апреля 2010 :: 09:10:
Z1 писал(а) 28. Апреля 2010 :: 08:58:
noxxx писал(а) 28. Апреля 2010 :: 08:55:
Вобщем результаты 7.3 и 7.4 отличаются лишь одним документом. У 7.4 одного документа в ошибках нет. А так и там и там одно и то же.

Ну это означает что при проведении именно этих документов были какие-то проблемы
Попробуй на тестовой базе перепроведи один из этих документов и посмотри уйдут ли из него ошибки.


После перепроведения документа он так и остался в обоих тестах в ошибках.
У этого документа есть одно "не его" движение.

Распиши подробней а то непонятно это ошибка обработки
или что-то не так с документом.
  
Наверх
 
IP записан
 
noxxx
Full Member
***
Отсутствует


1c++ rocks 8)

Сообщений: 239
Местоположение: Москва
Зарегистрирован: 24. Августа 2007
Пол: Мужской
Re: Движения одного документа у другого
Ответ #258 - 28. Апреля 2010 :: 09:28
Печать  
Не так с документом. Если смотреть "Отчет по движениям документа" (стандартный 1С, из кнопки "Действия"), то он показывает движение по регистру "Отказ" (я уже говорил об этом), по которому не должно быть движений.
  
Наверх
ICQ  
IP записан
 
Z1
God Member
*****
Отсутствует


I Love YaBB 2!

Сообщений: 2906
Местоположение: Москва
Зарегистрирован: 26. Мая 2006
Пол: Мужской
Re: Движения одного документа у другого
Ответ #259 - 28. Апреля 2010 :: 09:38
Печать  
noxxx писал(а) 28. Апреля 2010 :: 09:28:
Не так с документом. Если смотреть "Отчет по движениям документа" (стандартный 1С, из кнопки "Действия"), то он показывает движение по регистру "Отказ" (я уже говорил об этом), по которому не должно быть движений.

ну теперь ты с новыми аналогичными ошибками сможешь разбираться по свежим следам.
скажем запуская отчет через каждые два часа.
  
Наверх
 
IP записан
 
Z1
God Member
*****
Отсутствует


I Love YaBB 2!

Сообщений: 2906
Местоположение: Москва
Зарегистрирован: 26. Мая 2006
Пол: Мужской
Re: Движения одного документа у другого
Ответ #260 - 28. Апреля 2010 :: 09:40
Печать  
noxxx писал(а) 28. Апреля 2010 :: 09:28:
Не так с документом. Если смотреть "Отчет по движениям документа" (стандартный 1С, из кнопки "Действия"), то он показывает движение по регистру "Отказ" (я уже говорил об этом), по которому не должно быть движений.

Не понятно почему ошибка не уходит.
Отладь документ заново.
Закоментарь все внутри модуля проведения. Перепроведи.
Ошибка должна уйти.
Раскоментарь три строки и снова перепроведи.
.........
Итак ты найдешь ошибочное действие.
И после этого выкладывай здесь ошибку.
  
Наверх
 
IP записан
 
noxxx
Full Member
***
Отсутствует


1c++ rocks 8)

Сообщений: 239
Местоположение: Москва
Зарегистрирован: 24. Августа 2007
Пол: Мужской
Re: Движения одного документа у другого
Ответ #261 - 28. Апреля 2010 :: 09:49
Печать  
Закомментировал весь можуль проведения. Перепровел. У документа одно движение - то, которое "не его".
  
Наверх
ICQ  
IP записан
 
noxxx
Full Member
***
Отсутствует


1c++ rocks 8)

Сообщений: 239
Местоположение: Москва
Зарегистрирован: 24. Августа 2007
Пол: Мужской
Re: Движения одного документа у другого
Ответ #262 - 28. Апреля 2010 :: 09:56
Печать  
Это "не его" движение остается даже если документ распровести.
  
Наверх
ICQ  
IP записан
 
Salimbek
God Member
*****
Отсутствует



Сообщений: 862
Зарегистрирован: 06. Июня 2006
Пол: Мужской
Re: Движения одного документа у другого
Ответ #263 - 28. Апреля 2010 :: 09:57
Печать  
Автоматическое удаление движений у этого документа есть?
  
Наверх
ICQ  
IP записан
 
noxxx
Full Member
***
Отсутствует


1c++ rocks 8)

Сообщений: 239
Местоположение: Москва
Зарегистрирован: 24. Августа 2007
Пол: Мужской
Re: Движения одного документа у другого
Ответ #264 - 28. Апреля 2010 :: 09:59
Печать  
Salimbek писал(а) 28. Апреля 2010 :: 09:57:
Автоматическое удаление движений у этого документа есть?

Да, есть.
  
Наверх
ICQ  
IP записан
 
Z1
God Member
*****
Отсутствует


I Love YaBB 2!

Сообщений: 2906
Местоположение: Москва
Зарегистрирован: 26. Мая 2006
Пол: Мужской
Re: Движения одного документа у другого
Ответ #265 - 28. Апреля 2010 :: 10:01
Печать  
noxxx писал(а) 28. Апреля 2010 :: 09:49:
Закомментировал весь можуль проведения. Перепровел. У документа одно движение - то, которое "не его".

1. Это движение нужное ?
2. В rg по этому ra есть ошибки или нет ?
3. что показывает actcnt ( скорее всего 0 ) после перепроведения c пустым модулем проведения?
4. Известен ли документ который создал это движение?
5. Какая дата документа.  какая дата TA ?
  
Наверх
 
IP записан
 
Z1
God Member
*****
Отсутствует


I Love YaBB 2!

Сообщений: 2906
Местоположение: Москва
Зарегистрирован: 26. Мая 2006
Пол: Мужской
Re: Движения одного документа у другого
Ответ #266 - 28. Апреля 2010 :: 10:04
Печать  
Цитата:
Автоматическое удаление движений у этого документа есть

1.Попробуй убери галку автоматич перепроведения
2.Перепроведи с пустым модулем проведения
3.Восстанови галку автоматич перепроведения
4.Перепроведи с пустым модулем проведения

Может что-то сбилось внутри dds
(хотя вряд ли это поможет  а вдруг)

  
Наверх
 
IP записан
 
Z1
God Member
*****
Отсутствует


I Love YaBB 2!

Сообщений: 2906
Местоположение: Москва
Зарегистрирован: 26. Мая 2006
Пол: Мужской
Re: Движения одного документа у другого
Ответ #267 - 28. Апреля 2010 :: 10:10
Печать  
+ 265
у того другого документа приведи все actno lineno_
и должен ли он двигать нужный ra
и какая дата другого документа.
  
Наверх
 
IP записан
 
noxxx
Full Member
***
Отсутствует


1c++ rocks 8)

Сообщений: 239
Местоположение: Москва
Зарегистрирован: 24. Августа 2007
Пол: Мужской
Re: Движения одного документа у другого
Ответ #268 - 28. Апреля 2010 :: 10:16
Печать  
Z1 писал(а) 28. Апреля 2010 :: 10:01:
1. Это движение нужное ?
2. В rg по этому ra есть ошибки или нет ?
3. что показывает actcnt ( скорее всего 0 ) после перепроведения c пустым модулем проведения?
4. Известен ли документ который создал это движение?
5. Какая дата документа.  какая дата TA ?


1. Нужное вообще, но не для этого документа.
2. В каком смысле? Как проверить? Обработка в пункте 3.2 показывает этот документ как ошибочный.
3. actcnt = 0
4. Нет
5. Дата документа - 07.12.09, ТА - 30.04.10
  
Наверх
ICQ  
IP записан
 
Z1
God Member
*****
Отсутствует


I Love YaBB 2!

Сообщений: 2906
Местоположение: Москва
Зарегистрирован: 26. Мая 2006
Пол: Мужской
Re: Движения одного документа у другого
Ответ #269 - 28. Апреля 2010 :: 10:20
Печать  
А есть ли это движение в переф базе, если да то к у какого документа.
  
Наверх
 
IP записан
 
Z1
God Member
*****
Отсутствует


I Love YaBB 2!

Сообщений: 2906
Местоположение: Москва
Зарегистрирован: 26. Мая 2006
Пол: Мужской
Re: Движения одного документа у другого
Ответ #270 - 28. Апреля 2010 :: 10:22
Печать  
приведи после перепроведения ( пустой модуль) запись для этого документа из _1sjourn
  
Наверх
 
IP записан
 
Z1
God Member
*****
Отсутствует


I Love YaBB 2!

Сообщений: 2906
Местоположение: Москва
Зарегистрирован: 26. Мая 2006
Пол: Мужской
Re: Движения одного документа у другого
Ответ #271 - 28. Апреля 2010 :: 10:26
Печать  
Этот документ должен двигать регистр который остался
или этот регистр (где лишнее движение) не должен двигать исходный документ ?
  
Наверх
 
IP записан
 
noxxx
Full Member
***
Отсутствует


1c++ rocks 8)

Сообщений: 239
Местоположение: Москва
Зарегистрирован: 24. Августа 2007
Пол: Мужской
Re: Движения одного документа у другого
Ответ #272 - 28. Апреля 2010 :: 10:27
Печать  
Z1 писал(а) 28. Апреля 2010 :: 10:20:
А есть ли это движение в переф базе, если да то к у какого документа.

Такого движения в периферийной базе нет
  
Наверх
ICQ  
IP записан
 
noxxx
Full Member
***
Отсутствует


1c++ rocks 8)

Сообщений: 239
Местоположение: Москва
Зарегистрирован: 24. Августа 2007
Пол: Мужской
Re: Движения одного документа у другого
Ответ #273 - 28. Апреля 2010 :: 10:31
Печать  
Z1 писал(а) 28. Апреля 2010 :: 10:22:
приведи после перепроведения ( пустой модуль) запись для этого документа из _1sjourn


  

1sjourn.xls ( 19 KB | Загрузки )
Наверх
ICQ  
IP записан
 
noxxx
Full Member
***
Отсутствует


1c++ rocks 8)

Сообщений: 239
Местоположение: Москва
Зарегистрирован: 24. Августа 2007
Пол: Мужской
Re: Движения одного документа у другого
Ответ #274 - 28. Апреля 2010 :: 10:32
Печать  
Z1 писал(а) 28. Апреля 2010 :: 10:26:
Этот документ должен двигать регистр который остался
или этот регистр (где лишнее движение) не должен двигать исходный документ ?

Документ не должен двигать регистр, по которому остались движения
  
Наверх
ICQ  
IP записан
 
Z1
God Member
*****
Отсутствует


I Love YaBB 2!

Сообщений: 2906
Местоположение: Москва
Зарегистрирован: 26. Мая 2006
Пол: Мужской
Re: Движения одного документа у другого
Ответ #275 - 28. Апреля 2010 :: 10:45
Печать  
noxxx писал(а) 28. Апреля 2010 :: 10:16:
Z1 писал(а) 28. Апреля 2010 :: 10:01:
1. Это движение нужное ?
2. В rg по этому ra есть ошибки или нет ?
3. что показывает actcnt ( скорее всего 0 ) после перепроведения c пустым модулем проведения?
4. Известен ли документ который создал это движение?
5. Какая дата документа.  какая дата TA ?



2. В каком смысле? Как проверить? Обработка в пункте 3.2 показывает этот документ как ошибочный.


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

И так как этого движения нет в переф базе то обороты и остатки с декабря по затронутым измерениям совпадают ли в основной и переф базах ?
  
Наверх
 
IP записан
 
Z1
God Member
*****
Отсутствует


I Love YaBB 2!

Сообщений: 2906
Местоположение: Москва
Зарегистрирован: 26. Мая 2006
Пол: Мужской
Re: Движения одного документа у другого
Ответ #276 - 28. Апреля 2010 :: 10:48
Печать  
noxxx писал(а) 28. Апреля 2010 :: 10:32:
Z1 писал(а) 28. Апреля 2010 :: 10:26:
Этот документ должен двигать регистр который остался
или этот регистр (где лишнее движение) не должен двигать исходный документ ?

Документ не должен двигать регистр, по которому остались движения

Посмотрел 1sjourn.xls  
так как все rf = 0 то этот документ вообще не видит этого движения.
Если в тестовой сделаешь нулевое движение по этому регистру
( в пустой модуль проведения добавить только одно нулевое движение) то после второго проведения "псевдодвижение"
пропадет или свалиться на первом проведении по primary key этого ra ( можешь сразу lineno установить в 100)
  
Наверх
 
IP записан
 
noxxx
Full Member
***
Отсутствует


1c++ rocks 8)

Сообщений: 239
Местоположение: Москва
Зарегистрирован: 24. Августа 2007
Пол: Мужской
Re: Движения одного документа у другого
Ответ #277 - 28. Апреля 2010 :: 10:50
Печать  
Это просто нереально проверить. В регистре двигаются статусы уникальных идентификаторов.
  
Наверх
ICQ  
IP записан
 
Z1
God Member
*****
Отсутствует


I Love YaBB 2!

Сообщений: 2906
Местоположение: Москва
Зарегистрирован: 26. Мая 2006
Пол: Мужской
Re: Движения одного документа у другого
Ответ #278 - 28. Апреля 2010 :: 10:57
Печать  
noxxx писал(а) 28. Апреля 2010 :: 10:50:
Это просто нереально проверить. В регистре двигаются статусы уникальных идентификаторов.

Регистр двигает ресурсы по заданным измерениям - так намного понятней и правильней.

реально  ra и  rg связывает постоянный предикат.
( просто если это остатки товаров по складам или касса то это можно проверить по фактическим остаткам )
Может быть в следующей версии напишу проверку rg c ra.


  
Наверх
 
IP записан
 
Z1
God Member
*****
Отсутствует


I Love YaBB 2!

Сообщений: 2906
Местоположение: Москва
Зарегистрирован: 26. Мая 2006
Пол: Мужской
Re: Движения одного документа у другого
Ответ #279 - 28. Апреля 2010 :: 10:59
Печать  
Т.е. сейчас получается что что в одной базе есть движение
в другой пб его нет.
Где правильно доподлино неизвестно.
Также непонятно где правильные rg.

Кстати где движение неправильного регистра это регистр остатков или оборотов ?
  
Наверх
 
IP записан
 
noxxx
Full Member
***
Отсутствует


1c++ rocks 8)

Сообщений: 239
Местоположение: Москва
Зарегистрирован: 24. Августа 2007
Пол: Мужской
Re: Движения одного документа у другого
Ответ #280 - 28. Апреля 2010 :: 11:03
Печать  
Z1 писал(а) 28. Апреля 2010 :: 10:59:
Т.е. сейчас получается что что в одной базе есть движение
в другой пб его нет.
Где правильно доподлино неизвестно.
Также непонятно где правильные rg.

Кстати где движение неправильного регистра это регистр остатков или оборотов ?


Это регистр остатков. В периферийной базе сейчас уже никто не работает, она в качестве резерва держится.
У нас как раз в то время (конец прошлого года - начало этого) были проблемы с постоянными транзакциями, невозможностями проведения документа и т.п. Т.е. документ пытались провести, он не провелся, движение вот прилепилось к другому документу, потом тот документ пометили на удаление или что-то вроде того.
  
Наверх
ICQ  
IP записан
 
Z1
God Member
*****
Отсутствует


I Love YaBB 2!

Сообщений: 2906
Местоположение: Москва
Зарегистрирован: 26. Мая 2006
Пол: Мужской
Re: Движения одного документа у другого
Ответ #281 - 28. Апреля 2010 :: 11:08
Печать  
noxxx писал(а) 28. Апреля 2010 :: 11:03:
Z1 писал(а) 28. Апреля 2010 :: 10:59:
Т.е. сейчас получается что что в одной базе есть движение
в другой пб его нет.
Где правильно доподлино неизвестно.
Также непонятно где правильные rg.

Кстати где движение неправильного регистра это регистр остатков или оборотов ?


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


ну тогда можешь само движение куда либо сохранить на всякий случай в файл
а из основной базы удали его либо через delete ,
либо как в №276
  
Наверх
 
IP записан
 
Переключение на Главную Страницу Страницы: [1] 
ОтправитьПечать