Форум на Kuban.ru (http://forums.kuban.ru/)
-   Территория 1С (http://forums.kuban.ru/f1040/)
-   -   Помогите создать правильную структуру регистра сведений. (http://forums.kuban.ru/f1040/pomogite_sozdat-_pravil-nuyu_strukturu_registra_svedenij-2548265.html)

Antidot 28.04.2012 10:25

Помогите создать правильную структуру регистра сведений.
 
Нужно хранить в регистре людей. Кто кого и когда пригласил.
пример:
Петров пригласил Сидорова
Петров так же может пригласить и Иванова
Петров не может пригласить Петрова (т.е. самого себя же)
Сидоров не может пригласить Петрова, потому что он сам пришел от Петрова.
Иванов не может пригласить Сидорова, потому что Сидорова пригласил Петров.

может быть так, не знаю правильно ли это:
измерение: Кто
Ресурс: От кого.
но нужно сделать проверку, чтобы нельзя было пригласить "Сам себя".
а что касается даты, то регистр однозначно не периодический, но может быть реквизит типа дата добавить и по нему получать отчет "Кто когда кого пригласил".
подскажите пожалуйста, кто знает как?
спасибо.

Lexusss 28.04.2012 10:27

Измерения:
Кто
Кого
Ресурс:
Когда

Vacony 28.04.2012 10:59

Все проверки - кто кого и как - это уже программно делаешь.
Про регистр - в итоге чем закончился ? Будет ли он закрываться и в какой период времени надо знать приглашенных ?
Это можно решить регистром с двумя измерениями
кто
Кого
Вопрос надо ли его закрывать по задаче ?

Antidot 28.04.2012 11:12

(1) при предложенной вами структуре, Петров пригласил Иванова
Иванов пригласил Петрова, программа не ругается
а также Иванов пригласил Иванова, тоже не ругается.

Antidot 28.04.2012 11:14

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

Antidot 28.04.2012 11:16

+(0)измерение: Кто
Ресурс: От кого.
реквизит: Когда
такая структура не правильная?
в этом случае всего лишь нужно сделать одну проверку, чтобы Иванов не смог пригласить самого себя же.
если я правильно понимаю

Mitrich 28.04.2012 11:44

"Иванов не может пригласить Сидорова, потому что Сидорова пригласил Петров" - с чегой-то? Они пожизненно чтоль приглашают???
ИМХА. Постановка задачи малёхо не верна. Если надо контролировать, занят чел на встрече или нет, так и делайте регистр "Занято".
Измерение: Кто
Измерение: Когда
Ресурс: С кем
Реквизит: пригласил/приглашен
PS Дом свиданий, я извиняюсь, автоматизируете?

Mitrich 28.04.2012 11:47

+(6) Соответственно при двусторонней встрече - 2 записи:
Иванов, с 10 до 14, с Петровым, пригласил
Петров, с 10 до 14, с Ивановым, приглашен

bma1 28.04.2012 11:54

2(6) Это гербалайф. Кто кого пригласил в систему... :)

Uho 28.04.2012 11:59

Это морг или МММ

Mitrich 28.04.2012 12:01

(8) а, понятно. Дело Мавроди живет и побеждает :)
Дык тогда 1 Измерение: Кто. Чтобы повторно ни один не смог пригласиться.
Ресурс: От кого.
Реквизит: Когда

Mitrich 28.04.2012 12:03

(9)+(10) "доктор сказал в морг - значит в морг"

Lexusss 28.04.2012 12:09

Проверки - программные.

Antidot 28.04.2012 12:12

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

Mitrich 28.04.2012 12:14

(13) Ну дык (10). Морг в чистом виде.

molchun 28.04.2012 15:43

Чет МММ запахло)

Antidot 29.04.2012 04:31

в общем с тем что проверки нужно делать программные я уже понял, но со структурой не совсем.
Lexuss предложил :
Кто
Кого
Ресурс:
Когда
Mitrich предложил вариант
Измерение: Кто
Измерение: Когда
Ресурс: С кем
какой вариант выбрать, чтобы потом не было сюрпризов?
ресурс - это то что мы храним. нужно хранить "кто" и "кого", 2 значения. может быть для данной задачи вовсе не регистр сведений нужен?

Antidot 29.04.2012 07:49

Вроде бы решил. поправьте меня если не прав.
1 регистр:
Измерения
Кто
Кого
Ресурс:
Когда
2 регистр
измерения
Кто
Ресурс
Зарегистрирован - булево.
в этом случае, если хоть один раз клиент уже зарегистрирован, второй раз не запишешь.

DeiMos 29.04.2012 10:01

С полными однофамильцами - как бороться предлагаете?

DeiMos 29.04.2012 10:03

152 ФЗ...

Antidot 29.04.2012 10:39

(18) А какая разница какие фамилии, в 1С это ведь разные объекты будут?

DeiMos 29.04.2012 11:01

(20): Иванов Иван Иванович - хочет зарегистрироваться.

Есть ещё 1 объект с такими же ФИО.
ВОПРОС: Регистрировать ли этого Иванова?

VZ 29.04.2012 11:13

На первый взгляд кажется, что идеальна структура типа "справочник". Ведь в нем "кольцевых" связок подчиненности не найдешь, правда? ;)
Смущает только одно: как будем поступать, если элемент-группа выбывает (по какой-то причине)? А?
Кстати, для сторонников регистра вопрос тот-же...
После ответа на этот вопрос следует задастся следующим: когда выбывший поступает снова, он попадает на низший уровень иерархии, или восстанавливает прежний?

VZ 29.04.2012 11:24

Кстати, насчет "выбывания"... Сразу приступаем в вырожденной ("пограничной", если непонятно) ситуации.
Рисуем на бумаге карандашом нашу "пирамиду". Можно простую: у каждого узла два подчиненных. И уровней можно немножко - чтоб не утомляться :)
А теперь берем ластик и аккуратно стираем вершинку (самый верхний узел). Что видим? А видим [b]две[/b] пирамиды...

Antidot 29.04.2012 12:15

(21) да регистрировать. это ведь другой человек, помимо ФИО в карточке есть и другая информация, дата рождения например
(23) в моей задаче, необходимо чтобы соблюдалась связь от конкретного человека.
если Иванов пригласил Петрова, а Петров пригласил Кукушкина, то Кукушкин никакого отношения не имеет к Иванову. это не пирамида. По задаче так: Есть физ лицо Иванов. он зарегистрировался в базе, потом привел Петрова. и если КОНКРЕТНО Петров купит что то, то с продажи начислится процент Иванову. а если Петров пригласит кого то еще, для Иванова это уже не важно.

DeiMos 29.04.2012 12:21

(24): "(21) да регистрировать. это ведь другой человек, помимо ФИО в карточке есть и другая информация, дата рождения например"

- Вам вниматочно читать (19)

DeiMos 29.04.2012 12:22

А если Иванов, родившийся в ту же дату?

DeiMos 29.04.2012 12:25

Автор, не выноси мозг.
Выдавай карточки пластиковые номерные.

В старших разрядах карты - закодирован номер сотника, десятника.
Младший разряд - индивидуальный номер уникальный того Иванова.

МимохожийОднако 29.04.2012 14:02

ИМХО, самое оптимальное в (10)

Antidot 29.04.2012 14:03

(27) карточки будут.
еще раз повторяю, это не пирамида, там нет сотников и десятников.
меня интересовало, не будет ли в дальнейшем проблем, при моей реализации в (17).
то что в базе 2 одинаковых Физ лица, я вообще не вижу проблем.

МимохожийОднако 29.04.2012 14:08

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

DeiMos 29.04.2012 14:26

(29): "то что в базе 2 одинаковых Физ лица, я вообще не вижу проблем"

- ЧО??????????

bma1 29.04.2012 15:06

[quote=DeiMos;24814101]ЧО??????????[/quote]
Да не волнуйся так... скушай лучше гербалайфа... автор сам не понимает что пишет...

Antidot 30.04.2012 12:05

(32) автор не понимает что DeiMos пишет. есть вопрос и на него есть ответы в (1) (2) (6) (10)
а DeiMos по моему пишет одни вопросы.

Antidot 30.04.2012 12:08

Я вообще 2 регистра создал.
1 - Измерения: Кто, ОтКого, Ресурс: Когда
2 - Измерения: Кто, Ресурс: Зарегистрирован типа булево.
в этом случае проверка на (пригласить себя дважды) проверяется по второму регистру.

МимохожийОднако 30.04.2012 17:15

Первый регистр лишний.

bma1 30.04.2012 18:39

[quote=Antidot;24822941]автор не понимает что DeiMos пишет[/quote]
скушай лучше гербалайфа и перечитай 152 ФЗ.

Тундра1 30.04.2012 19:44

а было так хорошо :) обсуждения-решения, а тут пришел VZ и все опошлил в 22 и 23 ... тьху три разА !!!


Текущее время: 15:43. Часовой пояс GMT +3.