|  31.08.2006, 12:59 | #1 | 
| Участник | Номерная серия общая для всех компаний! 
			
			Есть ли такое. И если нету может кто подскажет красивое решение!?
		 | 
|  | 
|  31.08.2006, 13:12 | #2 | 
| Иван Захаров | Цитата: 
		
			Сообщение от 3oppo
			
			 Есть ли такое. И если нету может кто подскажет красивое решение!? NumberSequenceTable (Серии документов) - общая между всеми компаниями. NumberSequenceReference (Ссылки на серии документов) - в каждой компании своя. Возможно что-то еще - но цацапты под рукой нет... | 
|  | 
|  31.08.2006, 13:26 | #3 | 
| Участник | Цитата: 
		
			Сообщение от ziva
			
			 NumberSequenceTable (Серии документов) - общая между всеми компаниями. В каком смысле она общая?! У меня она различна для компаний! Не понял что вы хотели этим сказать! Как вариант здесь предлагают дублировать записи в разные компании, но это громоздко и не красиво. Особенно при большом кол-ве компаний. По моему проще юзать номерную серию одной и той же компании. Ещё есть какие ни будь идеи?! Последний раз редактировалось 3oppo; 31.08.2006 в 13:46. | 
|  | 
|  31.08.2006, 13:58 | #4 | 
| Мрачный тип | 
			
			Красивое простое решение, но не номерной серией и не требует танцев с бубном для  NemberSequenceReference : 1) таблица (код таблицы, код поля, инкрементируемый счетчик, префикс, суффикс, флаг захвата) с SaveDataPerCompany = No и статической функцией выдачи следующего номера по текущей табле/полю Работать будет везде и всегда. Для длинных идентификаторов (с числовой частью за пределами числа , определяемого 4-хбайтовым целым) инкрементируемый счетчик можно делать массивом и возвращать следующий номер как "префикс+счетчик[1]+счетчик[2]+...+счетчик[N]+суффикс" Нарисовать обвязочку для заполнения еще вменяемого вида - и прощай программерская хирургия при настройке номеров для новых типов документов Последний раз редактировалось TasmanianDevil; 31.08.2006 в 14:00. | 
|  | 
|  31.08.2006, 14:05 | #5 | 
| Участник | Цитата: 
		
			Сообщение от TasmanianDevil
			
			 Работать будет везде и всегда. если нужно все номерные серии перевести на такой режим, то можно создать домен, включить в него требуемые компании, поместить таблицы номерных серий в расшаренныю группу. и все. серии будут раздавать из одного пула. никакого бубна не нать. если только по одной серии, то тогда придется писать свое. 
				__________________ Дом поросенка должен быть крепостью. (Наф-Наф, полн. собр. соч., т.5, стр. 286) | 
|  | |
| За это сообщение автора поблагодарили: ziva (1). | |
|  31.08.2006, 14:06 | #6 | 
| Moderator | 
			
			Почитайте здесь
		 | 
|  | 
|  31.08.2006, 14:11 | #7 | 
| Участник | 
			
			То есть написать свою номерную серия для всех компаний. Что же вариант, возможно ещё понадобится.
		 | 
|  | 
|  31.08.2006, 14:26 | #8 | 
| Иван Захаров | Цитата: 
		
			Сообщение от 3oppo
			
			 ?!?!?  В каком смысле она общая?! У меня она различна для компаний! Не понял что вы хотели этим сказать! Компании: aaa, bbb Создаем табл. коллекцию 'SharedNum' и добавляем в нее таблицу NumberSequenceTable. Создаем виртуальную vrt, привязываем к ней табличную коллекцию 'SharedNum' и компании aaa, bbb соответственно. Перезаходим (перезапускаем АОС). В итоге имеем: NumberSequenceTable - общая между этими компаниями. Например, если нужно чтобы ПКО в каждой компании нумеровались по-своему - создаете серии 'AAA_ПКО' и 'BBB_ПКО'. Если нужна нумерация из одного пула номеров - создайте просто серию 'ПКО' и укажите ее в параметрах модуля в каждой из компаний. Прям как дети, чесс-слово... | 
|  | 
|  31.08.2006, 14:26 | #9 | 
| Мрачный тип | 
			
			mit, а непрерывность часто ли нужна ?  Если для нумерации документов - да Если для создания уникального идентификатора записи - вряд ли строго необходима. Предложенное мной - это решение навскидку, можно в принципе доработать до 100% "всегда и везде" плюс "это для всех , а это - только для этих компаний". Идентификация записи и связь по RecID считается плохим тоном ,а обычная номерная серия без перенастройки Вам больше 2 с копейками миллиардов идентификаторов не выдаст в принципе - а эта заготовка может кому и понадобится для очень долгоживущей генерации идентификаторов, пока есть 3-ка и если вдруг 4-ка не будет поодерживать в номерных сериях 8-байтовый целый тип для счетчика . А не понадобится - да и ладно   Последний раз редактировалось TasmanianDevil; 31.08.2006 в 14:32. | 
|  | 
|  31.08.2006, 14:30 | #10 | 
| Участник | 
			
			Вообще-то, есть более очевидное решение. Генерация и контроль любой номерной серии осуществляется через класс (точнее, набор классов). Вызов этого класса при любом раскладе надо делать вручную. Какие проблемы написать класс наследник, в котором делать принудительный переход в какую-либо фиксированную компанию, а затем уже вызов "штатного" класса? Другими словами, создаешь новую компанию, или используешь одну из существующих компаний как "хранилище" номерной серии, а генерация и контроль значений - через собственный класс. При вызове из любой компании автоматически переключаешся в эту специальную компанию и получаешь общее значение. | 
|  | |
| За это сообщение автора поблагодарили: mit (1). | |
|  31.08.2006, 14:33 | #11 | 
| Участник | Цитата: 
		
			Сообщение от TasmanianDevil
			
			 mit, а непрерывность часто ли нужна ? ... кстати сейчас пришла мысль, можно ведь при выхове класса номерных серий сходить в нужную компанию и взять там нужный идентификатор по всем правилам. причем можно сделать красивое решение, которое можно будет настраивать а не программировать каждый новый раз 
				__________________ Дом поросенка должен быть крепостью. (Наф-Наф, полн. собр. соч., т.5, стр. 286) | 
|  | 
|  31.08.2006, 14:34 | #12 | 
| Участник | 
			
			Владимир опередил   . именно это и имелось ввиду 
				__________________ Дом поросенка должен быть крепостью. (Наф-Наф, полн. собр. соч., т.5, стр. 286) | 
|  | 
|  31.08.2006, 14:43 | #13 | 
| Модератор | 
			
			Хм. Еще идея... есть группы номерных серий. В группу входит серия по компаниям. Посмотрите, как сделано на фактурах. Мы такое делали, когда надо было делать сквозную нумерацию по счетам-фактурам. Напишите Lexx - он подскажет, если еще не забыл  С Уважением, Георгий | 
|  | 
|  01.09.2006, 06:38 | #14 | 
| Участник | Цитата: 
		
			Сообщение от ziva
			
			 На пальцах: Компании: aaa, bbb Создаем табл. коллекцию 'SharedNum' и добавляем в нее таблицу NumberSequenceTable. Создаем виртуальную vrt, привязываем к ней табличную коллекцию 'SharedNum' и компании aaa, bbb соответственно. Перезаходим (перезапускаем АОС). ........... Абсолютно не приемлемое решение, так как в компаниях нужны различные номерные серии, кроме одной – двух ... .. Всем спасибо решил по своему через changecompany. Юзаю номерную серию одной компании. | 
|  | 
|  | 
|  Похожие темы | ||||
| Тема | Ответов | |||
| Номерная серия,,, превышена. | 28 | |||
| Данные из всех компаний | 18 | |||
| Несколько компаний - общая Главная Книга | 11 | |||
| Номерная серия в виртуальной компании | 2 | |||
| Номерная серия требование-накладная | 2 | |||
| 
 |