Переключение на Главную Страницу Страницы: 1 2 [3] 4  ОтправитьПечать
Очень популярная тема (более 25 ответов) Чёрно-белая бухия (число прочтений - 11340 )
kiruha
1c++ power user
Отсутствует



Сообщений: 1249
Зарегистрирован: 11. Апреля 2007
Re: Чёрно-белая бухия
Ответ #30 - 11. Декабря 2008 :: 11:05
Печать  
JohnyDeath писал(а) 11. Декабря 2008 :: 10:51:
Прямой инсерт в базу имеешь ввиду? Это как-то геморно кажется, да и ошибки скорее всего полезут.


Нет. Я делаю сравнение(например спр Номенклатуры) и получение данных(документы) через прямые.
Запись штатно в базе приемнике (кстати родные методы 1С-ки пишут достаточно быстро)
Запросы из базы приемника
  
Наверх
 
IP записан
 
JohnyDeath
1c++ power user
1c++ donor
Отсутствует



Сообщений: 3050
Местоположение: Волгоград
Зарегистрирован: 19. Мая 2006
Пол: Мужской
Re: Чёрно-белая бухия
Ответ #31 - 11. Декабря 2008 :: 11:28
Печать  
А, понял, ты просто для визуального сравнения делаешь, да? Потом всё равно открываешь вторую базу и уже там делаешь загрузку?
  
Наверх
 
IP записан
 
kiruha
1c++ power user
Отсутствует



Сообщений: 1249
Зарегистрирован: 11. Апреля 2007
Re: Чёрно-белая бухия
Ответ #32 - 11. Декабря 2008 :: 12:01
Печать  
JohnyDeath писал(а) 11. Декабря 2008 :: 11:28:
А, понял, ты просто для визуального сравнения делаешь, да? Потом всё равно открываешь вторую базу и уже там делаешь загрузку?


Из второй базы прямые запросы к родительской и к двум одновременно по технологии
http://www.1cpp.ru/forum/YaBB.pl?num=1182497837/19#19
запись здесь же по результатам запроса.
Никаких других баз не открываю.
  
Наверх
 
IP записан
 
JohnyDeath
1c++ power user
1c++ donor
Отсутствует



Сообщений: 3050
Местоположение: Волгоград
Зарегистрирован: 19. Мая 2006
Пол: Мужской
Re: Чёрно-белая бухия
Ответ #33 - 11. Декабря 2008 :: 12:22
Печать  
Так нормально будет работать в самых простых случаях (например, перенос номенклатуры), а тут вложенность может быть нехилая: доккумент у него реквизит МойСправочник, у моего справочника подчиненный ТВойСправочник, у твоего периодический реквизит Цена и т.д. до бесконечности...
Но всё равно спасибо, идею понял
  
Наверх
 
IP записан
 
novichek
Экс-Участник


Re: Чёрно-белая бухия
Ответ #34 - 11. Декабря 2008 :: 13:04
Печать  
JohnyDeath писал(а) 11. Декабря 2008 :: 12:22:
Так нормально будет работать в самых простых случаях (например, перенос номенклатуры), а тут вложенность может быть нехилая: доккумент у него реквизит МойСправочник, у моего справочника подчиненный ТВойСправочник, у твоего периодический реквизит Цена и т.д. до бесконечности...
Но всё равно спасибо, идею понял


угу, на каждый импортируемый объект своя процедурка, которая проверяет есть уже или нет, и пробегает, сверяя, по всем нужным реквизитам. если еще дополнить подобием кэша уже обработанных объектов, и использовать прямые запросы, легко грузятся почти любые последовательности.
  
Наверх
 
IP записан
 
JohnyDeath
1c++ power user
1c++ donor
Отсутствует



Сообщений: 3050
Местоположение: Волгоград
Зарегистрирован: 19. Мая 2006
Пол: Мужской
Re: Чёрно-белая бухия
Ответ #35 - 11. Декабря 2008 :: 13:18
Печать  
Ага, и получаем очередной велик под названием "Выгрузка-загрузка между идентичными конфигурациями"  Подмигивание
  
Наверх
 
IP записан
 
ev-kov
God Member
*****
Отсутствует



Сообщений: 694
Зарегистрирован: 27. Декабря 2006
Пол: Мужской
Re: Чёрно-белая бухия
Ответ #36 - 11. Декабря 2008 :: 14:51
Печать  
А может комплексная, одна фирма белый учет, другая фирма - черный учет, причем не нужно ничего дублировать в черной базе, если нужно видеть обороты счетов белая + черная, то по всем фирмам. Такой подход не проще будет ?
  

Информация - то, что снижает неопределенность в какой-либо области и очень важно не ошибиться областью в наш информационный век!
Наверх
 
IP записан
 
JohnyDeath
1c++ power user
1c++ donor
Отсутствует



Сообщений: 3050
Местоположение: Волгоград
Зарегистрирован: 19. Мая 2006
Пол: Мужской
Re: Чёрно-белая бухия
Ответ #37 - 11. Декабря 2008 :: 14:55
Печать  
Надо сделать на текущей бухгалтерии (не типовой и сильно переписанной)
  
Наверх
 
IP записан
 
ev-kov
God Member
*****
Отсутствует



Сообщений: 694
Зарегистрирован: 27. Декабря 2006
Пол: Мужской
Re: Чёрно-белая бухия
Ответ #38 - 11. Декабря 2008 :: 15:01
Печать  
JohnyDeath писал(а) 11. Декабря 2008 :: 14:55:
Надо сделать на текущей бухгалтерии (не типовой и сильно переписанной)


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

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

Информация - то, что снижает неопределенность в какой-либо области и очень важно не ошибиться областью в наш информационный век!
Наверх
 
IP записан
 
JohnyDeath
1c++ power user
1c++ donor
Отсутствует



Сообщений: 3050
Местоположение: Волгоград
Зарегистрирован: 19. Мая 2006
Пол: Мужской
Re: Чёрно-белая бухия
Ответ #39 - 11. Декабря 2008 :: 15:21
Печать  
Решил делать по такой схеме:
1. Добавляю в конфу общие реквизиты документов: ИД (с отбором), флВыгружен, ДатаВыгрузки
2. Добавляю такие же реквизиты во все справочники
3. Генерирую ИД-ки для всех объектов (наверное это будет ГУИД) и перезаписываю все объекты
4. Делаю копию текущей базы - это будет Беленькая
===процеес как это будет работать:===
5. Выгружаю все объекты из текущей базы, у которых флВыгружен=0
6. Загружаю в Беленькую, синхронизируя по ИД

Выгрузка-загрузка скорее всего будет через конвертацию (просто я её вообще не знаю  Смущённый , поэтому и говорю неуверенно)

Какие могут быть подводные камни в такой реализации?
  
Наверх
 
IP записан
 
ev-kov
God Member
*****
Отсутствует



Сообщений: 694
Зарегистрирован: 27. Декабря 2006
Пол: Мужской
Re: Чёрно-белая бухия
Ответ #40 - 11. Декабря 2008 :: 15:27
Печать  
JohnyDeath писал(а) 11. Декабря 2008 :: 15:21:
Решил делать по такой схеме:
1. Добавляю в конфу общие реквизиты документов: ИД (с отбором), флВыгружен, ДатаВыгрузки
2. Добавляю такие же реквизиты во все справочники
3. Генерирую ИД-ки для всех объектов (наверное это будет ГУИД) и перезаписываю все объекты
4. Делаю копию текущей базы - это будет Беленькая
===процеес как это будет работать:===
5. Выгружаю все объекты из текущей базы, у которых флВыгружен=0
6. Загружаю в Беленькую, синхронизируя по ИД

Выгрузка-загрузка скорее всего будет через конвертацию (просто я её вообще не знаю  Смущённый , поэтому и говорю неуверенно)

Какие могут быть подводные камни в такой реализации?

пространство guid должно быть непересекающимся по различным учетам  (только белое и только черное) для двух баз. Или это свойство guid ?
  

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



Сообщений: 1599
Местоположение: г.Новокузнецк
Зарегистрирован: 21. Февраля 2007
Пол: Мужской
Re: Чёрно-белая бухия
Ответ #41 - 11. Декабря 2008 :: 17:13
Печать  
А флаг флВыгружен ты в какой момент проставлять будешь?
Выгружен = Загружен?

Кчстати я тут вспомнил у меня пару лет работает такая вешь, хотя нужно проверить может уже не работает.
Выгрузка из нашей управленческой базы в бухгалтерию, там ид синхронезированных объектов с их ид и соответствиями в бухгалтерии пишутся во внешнюю табличку на SQL сервере. Только выгрузка там самаписная
  
Наверх
ICQ  
IP записан
 
vandalsvq
1c++ power user
Отсутствует


Я всего лишь als-особиратель
;-)

Сообщений: 2487
Местоположение: Уфа
Зарегистрирован: 18. Июля 2007
Пол: Мужской
Re: Чёрно-белая бухия
Ответ #42 - 11. Декабря 2008 :: 17:38
Печать  
Я вроде все прочитал, только не совсем понял чем вариант второго плана счетов не устраивает?
Есть конечно один большой минус, очень много документов надо переписывать и второй - быстродействие. Поскольку все проводки в одной таблице то с ростом количества проводок растет и 1SENTRY и это неприятно сказывается на отчетах которые собираются по "промежуточным" периодам. Т.е. не с нач.кон месяца, а с какой-нить даты по какую-нибудь. Но зато потом и все ОСВ и прочие радости с удовольствием работают без проблем.

Жаль что я сначала в тему не влился... но мне инет отрубили и все тут Печаль. Хотя мое мнение наверное и не стали бы особо слушать  Класс
  

Отхожу от дел. Долго и мучительно.
Наверх
IP записан
 
JohnyDeath
1c++ power user
1c++ donor
Отсутствует



Сообщений: 3050
Местоположение: Волгоград
Зарегистрирован: 19. Мая 2006
Пол: Мужской
Re: Чёрно-белая бухия
Ответ #43 - 11. Декабря 2008 :: 18:44
Печать  
ev-kov писал(а) 11. Декабря 2008 :: 15:27:
пространство guid должно быть непересекающимся по различным учетам  (только белое и только черное) для двух баз. Или это свойство guid ?

это просто ИД, по которым будет осуществлятся поиск и идентификация объектов в базе.

Nick писал(а) 11. Декабря 2008 :: 17:13:
А флаг флВыгружен ты в какой момент проставлять будешь?
Выгружен = Загружен?

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

Про флаг тоже пока особо не определился. Очевидно, что есть 2 пути:
1. устанавливать его при выгрузке. Но здесь не факт, что он был успешно загружен
2. устанавливать его после действительно успешной загрузки. Тогда придётся после загрузки делать доп. телодвижения в Ч. базе. Как-то не красиво. Хотя можно табличку успешних загрузок (гуид - успешно_загружен) где-нить оставлять, а при следующем открытии обработки выгрузки подгружать эту табличку, проставлять флаги, а уж только потом выгружать.
надо думать.

Базы на ДБФ, поэтому всех прелестей скуля в данном случае вкусить не могу.  Печаль

vandalsvq писал(а) 11. Декабря 2008 :: 17:38:
Я вроде все прочитал, только не совсем понял чем вариант второго плана счетов не устраивает?
Есть конечно один большой минус, очень много документов надо переписывать и второй - быстродействие. Поскольку все проводки в одной таблице то с ростом количества проводок растет и 1SENTRY и это неприятно сказывается на отчетах которые собираются по "промежуточным" периодам. Т.е. не с нач.кон месяца, а с какой-нить даты по какую-нибудь. Но зато потом и все ОСВ и прочие радости с удовольствием работают без проблем.

Жаль что я сначала в тему не влился... но мне инет отрубили и все тут Печаль. Хотя мое мнение наверное и не стали бы особо слушать  Класс

Да нет, Саш, почему б не стали??  Я прислушиваюсь к мнению любого человека, а уж к здешним постояльцам - грех не прислушаться.

Честно, я даже никогда в глаза не видел базы с 2-мя планами счетов, поэтому понятия не имею как всё это устроено. Можешь как-нибудь поподробнее? Если я, допкстим, выбрал этот вариант, что примерно я должен сделать?
1. Добавить в доки (где надо) доп. реквизиты, например, СуммаЧерная.
2. Разрулить проблемы с доступом и видимостью этих реквизитов.
3. Переписать все бух. отчеты.
примерно так?
  
Наверх
 
IP записан
 
vandalsvq
1c++ power user
Отсутствует


Я всего лишь als-особиратель
;-)

Сообщений: 2487
Местоположение: Уфа
Зарегистрирован: 18. Июля 2007
Пол: Мужской
Re: Чёрно-белая бухия
Ответ #44 - 11. Декабря 2008 :: 20:38
Печать  
JohnyDeath писал(а) 11. Декабря 2008 :: 18:44:
Честно, я даже никогда в глаза не видел базы с 2-мя планами счетов, поэтому понятия не имею как всё это устроено. Можешь как-нибудь поподробнее? Если я, допкстим, выбрал этот вариант, что примерно я должен сделать?
1. Добавить в доки (где надо) доп. реквизиты, например, СуммаЧерная.
2. Разрулить проблемы с доступом и видимостью этих реквизитов.
3. Переписать все бух. отчеты.
примерно так?


Если будет 2 и более ПС то:
1. Они всегда будут видимы в окне выбора счета (стандартные отчеты+справочники+документы) если там не указан конкретный ПС
- т.е. это первая доработка. Берем каждый отчет и меняем просто Счет -> Счет.Основной (чтобы другой выбрать не могли)
- далее отчетик пишешь чтобы не все подряд смотреть и по нему по метаданным пробегаешься и везде чтобы пользователи мозг не "тру-ля-ля". Нам же скрыть надо по макс верно? Улыбка
2. Оба ПС будут видимы в окне которое открывается при нажатии стандартной кнопки ТТ на панели 1С.
- лечится написанием своей обработки и подстановкой
3. Документы которые должны быть во втором плане счетов могут быть как в основном так и во втором плане счетов надо переписывать. Как вариант вот порядок действий:
- добавляешь закладки на которых располагаешь нужные тебе реквизиты. Т.е. одновременно документ для некоторых как и был, а для других он еще и дополнительно проводит то что надо. Правда рулежка правами должна быть хорошая. В проведении кое-где просто задвоение, где то переписать. Советую сразу добавить две переменные глОсновнойПланСчетов, глДополнительныйПланСчетов, чтобы не парится. Счета создаются как обычно через "СчетПоКоду", соответственно проблем нет. Берешь копипастишь или в цикл
Для НомерПС = 1 По КолПлановСчетов Цикл

- Что касается прав на закладки, инсентером по конфе пробежаться везде одну процедурку для контроля поставить... но это на вскидку. Отдельные проблемы чуточку сложнее наверное будут в плане реализации управления правами.
- поскольку документы по двум ПС оба будут в движениях и операциях то: 1. Меняешь форму проводок 2. Форму журнала операций прийдется закрыть. Или писать аналогичную но свою собственную. Что собственно не очень сложно. Даже прямым запросом две таблицы понадобиться всего (и работать будет вполне норм). 3. все формы которые так или иначе дают доступ к информации. Их не много.
(как изменить форму просмотра проводок тебе решать или RWidjets ловишь выбор команды и свою подсовываешь, или стандартную форму многострочную часть прячешь, располагаешь ТЗ, колонки аналогично расставляешь (Fromex рулит), заполняешь только по одному плану счетов + привязка. Т.к. ТЗ почему то сама не изменяет размер, благо подправили этот косяк)
- написать пару обработок для просмотра движений по двум ПС.

Есть проблемы с производительностью, т.к. тут в формат хранения вопрос упирается. 1С хранит проводки в одной таблице по всем ПС, соответственно объем проводок увеличится, а значит и увеличится объем таблицы и итоги будут собираться постепенно все тяжелее и тяжелее за промежуточные периоды внутри месяцев (и по проводкам, в общем тогда когда 1SENTRY читается). Кстати в 8-ке реализовано рациональнее насколько я понял.

Это то что я написал на вскидку. Вообще если интересна такая реализация стучись в аську, там я есть, а сюда только по вечерам счас получается Печаль. (205 971 125 - вот)
  

Отхожу от дел. Долго и мучительно.
Наверх
IP записан
 
Переключение на Главную Страницу Страницы: 1 2 [3] 4 
ОтправитьПечать