|
Использование справочника "Статьи затрат"
|
|||
---|---|---|---|
#18+
Коллеги, здравствуйте! Посоветуйте, пожалуйста. Мне нужно выгрузить в MS Access журнал хозяйственных операций из 1С. Посредством соответствующей обработки я вычислил в каких таблицах 1С хранит нужные мне данные. В MS Access сформировал связанные ODBC таблицы.В итоге у меня получилось вывести почти все, что я хотел - дату, счета ДТ и КТ, контрагента, подразделение и т.п. Не могу никак подсоединить справочник "Статьи затрат". Корневая таблица у меня называется "РеестрБухгалтерии.Хозрасчетный" (dbo_AccRg599). К ней уже цепляются все остальные. Справочник "Статьи затрат" я нашел - в моей базе он находится в Таблице dbo_Reference114. Но связать вместе эти таблицы я не могу. ... |
|||
:
Нравится:
Не нравится:
|
|||
15.02.2019, 11:48 |
|
Использование справочника "Статьи затрат"
|
|||
---|---|---|---|
#18+
Pavka_Korchagin, авторЕсли регистр бухгалтерии ссылается на план счетов, у которого максимальное количество субконто больше нуля, то создается таблица значений субконто (_AccntRegED<n>) с полями: _Period - момент времени движения; _Recorder<suff> - ссылка на регистратор; _LineNo - номер движения по данному регистратору; _Correspond - вид движения. Поле присутствует в регистрах без корреспонденции; _Kind<suff> - ссылка на характеристику субконто; _Value<suff> - значение характеристики; _Fld<n> - общие реквизиты. ... |
|||
:
Нравится:
Не нравится:
|
|||
15.02.2019, 13:01 |
|
Использование справочника "Статьи затрат"
|
|||
---|---|---|---|
#18+
Pavka_Korchagin, А контрагента ты как нашёл? Статьи затрат (да и все значения субконто так же по идее). ... |
|||
:
Нравится:
Не нравится:
|
|||
15.02.2019, 13:38 |
|
Использование справочника "Статьи затрат"
|
|||
---|---|---|---|
#18+
ХитроглазыйPavka_Korchagin, А контрагента ты как нашёл? Статьи затрат (да и все значения субконто так же по идее). Потому как для dbo_AccRg599 контрагент и подразделение это: автор_Fld<n><suff> - измерение, ресурс или реквизит (для каждого измерения, каждого ресурса и каждого реквизита); а вот Статья затрат это значение субконто и оно храниться отдельно, да еще и в нескольких таблицах т.к. итоги по субконто хранятся в разных таблицах, по количеству субконто. ... |
|||
:
Нравится:
Не нравится:
|
|||
15.02.2019, 13:47 |
|
Использование справочника "Статьи затрат"
|
|||
---|---|---|---|
#18+
Pavka_Korchagin, Выберете из своей Код: sql 1.
это и будут значения субконто для dbo_Reference114 ... |
|||
:
Нравится:
Не нравится:
|
|||
15.02.2019, 14:04 |
|
Использование справочника "Статьи затрат"
|
|||
---|---|---|---|
#18+
vitkhvPavka_Korchagin, Выберете из своей Код: sql 1.
это и будут значения субконто для dbo_Reference114 точнее Код: sql 1.
... |
|||
:
Нравится:
Не нравится:
|
|||
15.02.2019, 14:16 |
|
Использование справочника "Статьи затрат"
|
|||
---|---|---|---|
#18+
Хитроглазый, Контрагента нашел через вспомогательную таблицу - ЖурналДокументов.Документы (_DocumentJournal24675). По идее через аналогичную таблицу присоединяется и справочник статей затрат. Коллега vitkhv дал наводочку на РегистрБухгалтерии.Хозрасчетный.Субконто (_AccRgED635). Сейчас пытаюсь присоединить _AccRgED635 к dbo_AccRg599. Почему пытаюсь - получается очень большой размер итоговой таблицы. Access пишет, что не хватает памяти для отображения. Видимо одной записи dbo_AccRg599 соответствует несколько в _AccRgED635. Кстати, почему? ... |
|||
:
Нравится:
Не нравится:
|
|||
15.02.2019, 14:25 |
|
Использование справочника "Статьи затрат"
|
|||
---|---|---|---|
#18+
Pavka_KorchaginСейчас пытаюсь присоединить _AccRgED635 к dbo_AccRg599. Почему пытаюсь - получается очень большой размер итоговой таблицы. Access пишет, что не хватает памяти для отображения. Видимо одной записи dbo_AccRg599 соответствует несколько в _AccRgED635. Кстати, почему? По каким полям соединяете? ... |
|||
:
Нравится:
Не нравится:
|
|||
15.02.2019, 14:32 |
|
Использование справочника "Статьи затрат"
|
|||
---|---|---|---|
#18+
vitkhv, Спасибо за ответ! Но у меня поле _Value_RTRef содержит не значения , а ссылки. ... |
|||
:
Нравится:
Не нравится:
|
|||
15.02.2019, 14:32 |
|
Использование справочника "Статьи затрат"
|
|||
---|---|---|---|
#18+
vitkhv, На картинке, наверное, понятнее. ... |
|||
:
Нравится:
Не нравится:
|
|||
15.02.2019, 14:43 |
|
Использование справочника "Статьи затрат"
|
|||
---|---|---|---|
#18+
Pavka_Korchaginvitkhv, Спасибо за ответ! Но у меня поле _Value_RTRef содержит не значения , а ссылки. Естественно ссылки. Ссылки на значения субконто. Сделайте такой запрос : Код: sql 1. 2. 3.
и увидите, что значат эти ссылки. ... |
|||
:
Нравится:
Не нравится:
|
|||
15.02.2019, 14:43 |
|
Использование справочника "Статьи затрат"
|
|||
---|---|---|---|
#18+
vitkhv, Подскажите, пожалуйста, где можно почитать про "_LineNo - номер движения по данному регистратору" из _AccntRegED<n>; Вроде бы получилось у меня присоединить статьи затрат. Но, таблица выходит очень длинная и Аксесс ругается. ... |
|||
:
Нравится:
Не нравится:
|
|||
15.02.2019, 15:05 |
|
Использование справочника "Статьи затрат"
|
|||
---|---|---|---|
#18+
Pavka_Korchagin, Код: sql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13.
... |
|||
:
Нравится:
Не нравится:
|
|||
15.02.2019, 15:11 |
|
Использование справочника "Статьи затрат"
|
|||
---|---|---|---|
#18+
Pavka_Korchagin, извиняюсь, так правильней: Код: sql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13.
... |
|||
:
Нравится:
Не нравится:
|
|||
15.02.2019, 15:12 |
|
Использование справочника "Статьи затрат"
|
|||
---|---|---|---|
#18+
Pavka_Korchagin, а еще лучше так: Код: sql 1. 2. 3. 4. 5. 6. 7. 8. 9.
Что бы неявного преобразование в binary не было ... |
|||
:
Нравится:
Не нравится:
|
|||
15.02.2019, 15:21 |
|
Использование справочника "Статьи затрат"
|
|||
---|---|---|---|
#18+
Pavka_Korchagin, кстати и контрагент скорей всего есть в _AccRgED тогда ЗнСуб._Value_RTRef = 55 и LEFT JOIN _Reference55 ... |
|||
:
Нравится:
Не нравится:
|
|||
15.02.2019, 15:40 |
|
Использование справочника "Статьи затрат"
|
|||
---|---|---|---|
#18+
Pavka_Korchagin, ну и соединение _AccRg599 и _AccRgED114 делайте по inner join ... |
|||
:
Нравится:
Не нравится:
|
|||
15.02.2019, 15:41 |
|
Использование справочника "Статьи затрат"
|
|||
---|---|---|---|
#18+
vitkhv, Обратил внимание, что поле _Value_RTRef во всех записях в таблице AccRgED пустое. Так что делать по нему отбор бесполезно. ... |
|||
:
Нравится:
Не нравится:
|
|||
15.02.2019, 16:01 |
|
Использование справочника "Статьи затрат"
|
|||
---|---|---|---|
#18+
Pavka_Korchagin, Этого не может быть в принципе. Т.к. 1С так хранит составные поля. И вообще у 1С не может быть не заполненных значений. У нее во всех таблицах, во всех полях этих таблиц принципиально not null. ... |
|||
:
Нравится:
Не нравится:
|
|||
15.02.2019, 16:44 |
|
Использование справочника "Статьи затрат"
|
|||
---|---|---|---|
#18+
Pavka_Korchagin, и даже джоин со справочником у 1С обязательно будет таким (там запрос немного другой будет, но суть такая): FROM _AccRgED<n> T1 LEFT JOIN _Reference114 T2 ON T1._Value_TYPE = 0x08 AND T1._Value_RTRef = 0x00000072 AND T1._Value_RRRef = T2 ._IDRRef Что бы попасть в индекс составного поля. А индекс по составному полю у _AccRgED<n> обязателен и выглядит так: Name Data TypeSizeIdentityAllow NULLs_Value_TYPE binary(1) 1 No No_Value_RTRef binary(4) 4 No No_Value_RRRef binary(16) 16 No No_Period datetime 8 No No ... |
|||
:
Нравится:
Не нравится:
|
|||
15.02.2019, 17:03 |
|
Использование справочника "Статьи затрат"
|
|||
---|---|---|---|
#18+
Pavka_KorchaginХитроглазый, Контрагента нашел через вспомогательную таблицу - ЖурналДокументов.Документы (_DocumentJournal24675). Плохая идея. Одному документу/хозоперации может несколько контрагентов соответствовать. Ликбез 1С/БУ: Регистратор = документ; обычно одному документу соответствует несколько проводок = хозопераций (_LineNo). Хозоперация = проводка - движение сумм (Дебет/Кредит = _AccountDtRRef/_AccountCtRRef). Каждый счет (Дебет и Кредит) может иметь свой набор аналитик, например, счет Товары на складах - может иметь аналитики Склад и Номенклатура, счет РасчетныеСчета: БанковскийСчет, СтатьяДДС; и т.д. в РСБУ часто не более 3х аналитик на счёте. _AccRgXX - основная таблица операций; _AccRgEDXXX - таблица аналитик дебета и кредита; В общем, проще, правильней и надежней было бы из 1С к твоему Аксесу подключить и куда надо нужные операции сложить. ... |
|||
:
Нравится:
Не нравится:
|
|||
15.02.2019, 17:11 |
|
Использование справочника "Статьи затрат"
|
|||
---|---|---|---|
#18+
смысл всего этого трэша и угара особенно с учетом как выше было сказано полей составного типа и субконто (нужного типа) которые еще могут быть на разных позициях на счете и адекватно проще и надежнее выгрести информацию изнутри 1с-ым запросом. ... |
|||
:
Нравится:
Не нравится:
|
|||
15.02.2019, 17:31 |
|
Использование справочника "Статьи затрат"
|
|||
---|---|---|---|
#18+
vitkhvPavka_Korchagin, и даже джоин со справочником у 1С обязательно будет таким (там запрос немного другой будет, но суть такая): FROM _AccRgED<n> T1 LEFT JOIN _Reference114 T2 ON T1._Value_TYPE = 0x08 AND T1._Value_RTRef = 0x00000072 AND T1._Value_RRRef = T2 ._IDRRef Что бы попасть в индекс составного поля. А индекс по составному полю у _AccRgED<n> обязателен и выглядит так: Name Data TypeSizeIdentityAllow NULLs_Value_TYPE binary(1) 1 No No_Value_RTRef binary(4) 4 No No_Value_RRRef binary(16) 16 No No_Period datetime 8 No No И вообще из этого следует, что оптимизированный запрос будет выглядеть так: Код: sql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13.
Но в это в MSSQL, как там у вас в MS Access дело с индексами состоит я хз. ... |
|||
:
Нравится:
Не нравится:
|
|||
15.02.2019, 17:35 |
|
Использование справочника "Статьи затрат"
|
|||
---|---|---|---|
#18+
МодальноеОкносмысл всего этого трэша и угара особенно с учетом как выше было сказано полей составного типа и субконто (нужного типа) которые еще могут быть на разных позициях на счете и адекватно проще и надежнее выгрести информацию изнутри 1с-ым запросом. Если бы автор правильно данные утянул в Access, то было бы норм. А так в принципе можно и просто по полю _Value_RRRef искать конечно, т.к. вероятность генерации одинакового ГУИД в разных таблицах мала. Но совсем не исключена. ... |
|||
:
Нравится:
Не нравится:
|
|||
15.02.2019, 17:43 |
|
|
start [/forum/topic.php?fid=28&msg=39774714&tid=1518283]: |
0ms |
get settings: |
9ms |
get forum list: |
14ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
159ms |
get topic data: |
13ms |
get forum data: |
3ms |
get page messages: |
66ms |
get tp. blocked users: |
2ms |
others: | 15ms |
total: | 289ms |
0 / 0 |