Имя: Пароль:
1C
1C 7.7
v7: Вопрос по регистрам.
0 never_sleep
 
31.08.15
08:39
Есть 2 совершенно одинаковые базы (база1 и база 2), отличающиеся только движениями по одному регистру остатков. Движения по этому регистру в базе1 только за 2015 год и они неверные. Движения в базе2 верные и они за период с 2012 года. Учитывая, что базы ничем кроме регистра не отличаются, я хотел движениями за 2015 год из регистра базы2 заменить движения этого регистра в базе1. Но есть небольшая проблема для меня. База1 -DBF, а База2 - SQL. И как взять движения из второй базы я не знаю. С ДБФ все просто (или мне так кажется): Перенес файл, отсек движения за предыдущие года и все. А как сделать такое же с SQL не знаю. Прошу помощи и советов.
1 DCKiller
 
31.08.15
08:42
Вызвать программиста.
2 Trotter
 
31.08.15
08:44
Мда...
Род занятий:     Нач ИТ отдела.
3 aka AMIGO
 
31.08.15
08:46
(2) Вполне. Достаточно иметь толковых подчиненных :)
4 Масянька
 
31.08.15
08:46
(2) Не царское это дело... По регистрам шариться :)
5 never_sleep
 
31.08.15
08:52
Ребят, я все понимаю вы все тут опупенные профи. И тут на мисте очень демократично с оффтопом. Но все же. Есть кто может на вопрос ответить?
6 Sserj
 
31.08.15
08:55
"..Перенес файл, отсек движения за предыдущие года и все.." - и хоть раз так делал работало?
Если уверен что базы одинаковы на уровне внутренних id документов, то делов то - выгрузи базу sql и загрузи ее в формате dbf.
7 aka AMIGO
 
31.08.15
09:00
[] Вроде-б в 7.7 все движения регистров выполняются только документами, при проведении..
или я что-то упустил?
8 never_sleep
 
31.08.15
09:02
(6) Не пробовал. Не было необходимости.
База подобралась к критическим для ДБФ размерам. Регистры, в частности тот, про который идет речь, под 2 гига. Поэтому перевел все на сакуль. Но мера временна, нет лицензии, да и подтормаживает. Обрезал базу, выгрузил её в ДБФ, но после восстановления ГП, по проблемному регистру неправильно легли движения (там долго объяснять почему). Документы в обоих базах одинаковые абсолютно. Мне бы вытащить из скуль базы движения по этому регистру и перенести их в пожатую базу. Но не знаю как это делать.
9 never_sleep
 
31.08.15
09:05
(6) "Если уверен что базы одинаковы на уровне внутренних id документов, то делов то - выгрузи базу sql и загрузи ее в формате dbf."
Мне бы завтра пустить людей в новую базу, а выгрузка в ДБФ затянется на сутки минимум (в текущей базе в настощей момент бьют доки). Да и не факт что выгрузится, так как с момента миграции на скуль прошло время и упрусь в ограничение на размер ДБФ-ки.
10 never_sleep
 
31.08.15
09:09
(6) "Если уверен что базы одинаковы на уровне внутренних id документов"
Мне бы открыть этот регистр в скулевской базе в таком же виде как его открываю дбфнавигатором в дбф-ной базе и посмотреть столбец документа-движения. Но как это сделать?
11 Sserj
 
31.08.15
09:10
(8) Да ладно "долго объяснять" - то. Модуль проведения изменили и не подумали что задним числом перепроводить придется.
:)
Правильней не переносить движения а разобраться что вносит ошибки в движения и исправить. А то через полгода-год опять придется разбираться.
12 never_sleep
 
31.08.15
09:11
(11) Не мои переделки. Имею что дали.
13 Sserj
 
31.08.15
09:12
(10) Дэк скуль какой стоит? В каждом менеджентстудия есть там и сделай запрос select * from RG***-своего региста.
14 never_sleep
 
31.08.15
09:12
(11) Ща объясню. Хотя к теме это не имеет отношения.
15 never_sleep
 
31.08.15
09:17
Там люди вручную выбирали соответствие одного справочника другому при проведении документов. Т.е. перед тем как провести документ, нужно было выствить правильную "привязку" и потом препроводить. Привяки постоянно меняются. В конечно итоге, когда восстанавливаю ГП стоят привязки на конечный момент времени и с ними перепроводятся все документы. Когда штатно перепровожу ГП (каждый месяц перед выгрузкой в Бухгалтерию), то просто отключаю движения по этому регистру, ибо они и так верные. А тут этих движений в пожатой базе нет. И соотвественно нужно двигать, но как это сделать, когда привязка меняется сто раз на дню. Не спрашивайте, кто придумал такие костыли - не я.
16 never_sleep
 
31.08.15
09:17
(13) 2005.
Я правильно понял.
17 Sserj
 
31.08.15
09:18
(14) Да вообще то это не имеет значения.
Все махинации напрямую с базой все-равно рано или поздно вылезут тем еще геммороем.
Если нужно пусть народ в базу я бы просто ввел корректирующий документ чтобы к примеру на 01.08.15 были точные рабочие остатки. Это даст время на исправление ситуации с прошлым периодом. Народ будет работать с правильными цифрами а сам неспеша исправишь ошибку.
18 Mikeware
 
31.08.15
09:18
1. Экспорт DTS'ом нужных(по периоду) данных из сиквельной таблицы в подготовленный dbf.
2. Переиндексация конкретно этого файла движений.
3. Пересчёт итогов именно по этому регистру.
4. Подмена движений, итогов и их индексов в целевой базе.
Профит.
19 never_sleep
 
31.08.15
09:19
(13) Я правильно понял: таблица в скуль-базе называется также как в ДБФ-файл с регистром в ДБФ базе? Если в ДБФ файл называется RG9119.DBF то скуль таблица будет называться RG9119?
20 Mikeware
 
31.08.15
09:21
(17)  геморрой возникает только у тех, кто делает не думая.
21 Sserj
 
31.08.15
09:21
(19) у скульной тоже есть dd там и посмотри как таблица остатков и таблица движений называются.
23 Mikeware
 
31.08.15
09:23
(19) смотри DDS.  Как правило, при экспорте в сиквел имена сохраняются, но лучше удостовериться.
24 never_sleep
 
31.08.15
09:23
(21) DDS. Нашел спасибо.
25 never_sleep
 
31.08.15
09:29
(23) Да сохранилось. Проверил.
(18) Можно поподробнее по пунктам. Очень прошу!!! чертовски выручите!!!
(22) Куплена восьмерка. СКуль. Полный фарш. Параллельно занимаемся миграцией. Подобных ДБФ проблем больше не будет. (будет другие:))
26 never_sleep
 
31.08.15
09:32
(18) предлагают сделать что-то типа
select * from table1;
output to c:\1.dbf FORMAT DBASEIII;
27 Mikeware
 
31.08.15
09:35
(25) да вроде и так по пунктам...
Единственное, что пункты 2и3 делать в пустой дбфной базеччерез тии.
28 never_sleep
 
31.08.15
09:37
(27) В пустую ДБФ базу кинуть вытянутый со скуля файл регистра и сделать там тии? А оно не похерит там все движения? Или не делать полное тестирование, а только реиндексацию?
29 Mikeware
 
31.08.15
09:38
(26) в 2005-возмоэно,и так - в нём dts'а вроде уже нет.
30 never_sleep
 
31.08.15
09:44
(29) вопрос может для вас глупый, но
"3. Пересчёт итогов именно по этому регистру."
Когда делаю тии в базе. 1С итоги по регистру пересчитывает основываясь только на данных записанных в нем самом? Не вызовет ли отсутствие документов и записей в других регистрах сброс движений в нужном регистре?
31 Злопчинский
 
31.08.15
09:47
(30) не должно.
32 Mikeware
 
31.08.15
10:12
(30)да. Итоги считаются только по движениям. Для пересчёта одного регистра в пуст базу эквивалентной структуры копирцется файл движений, и затем через тии переиндексация и пересчёт. А потом они копиртся обратно.
33 ДенисЧ
 
31.08.15
10:13
(29) " в 2005-возмоэно,и так - в нём dts'а вроде уже нет."
Как это?
34 Mikeware
 
31.08.15
10:14
Пля, почему на смартфону форум стал валиться? На любом браузере... Не иначе, реклама гадит
35 ДенисЧ
 
31.08.15
10:16
(34) поставь миста-ридер - он не валится...
36 Mikeware
 
31.08.15
10:16
(33) заменили чем-то вроде. В 2008 точно.
37 Mikeware
 
31.08.15
10:17
35) офигеть. Из-за миски холодца всю свинью колоть...
38 ДенисЧ
 
31.08.15
10:18
(37) Зачем колоть? Отдельная программка. Вполне удобная. Я ей пользуюсь постоянно...
39 ДенисЧ
 
31.08.15
10:21
(36) ну, как бы мастер импорта/экспорта в 2012 есть...
40 Mikeware
 
31.08.15
10:26
(39) ага.
41 never_sleep
 
31.08.15
13:44
Вопрос на засыпку. В регистрах итогов (RG) используется поле "PERIOD" с типом "дата":
# Name      |Descr               |Type|Length|Precision
F=PERIOD    |Period Registr      |D   |8     |0  
Оно означает на какой период рассчитаны итоги в данной строке?
42 Mutniy2
 
31.08.15
14:20
43 Mutniy2
 
31.08.15
14:21
PERIOD     Период остатков. Всегда равен началу периода (месяц для нашего примера). Тип - DateTime (для dbf - Date).
44 never_sleep
 
31.08.15
15:09
(42) Спасибо!