У кого какая идея

Тема в разделе "1C и всё что с ней связано", создана пользователем TimeDontWait, 2 дек 2010.

  1. TimeDontWait

    TimeDontWait Well-Known Member

    Регистрация:
    4 янв 2010
    Сообщения:
    383
    Симпатии:
    0
    Итак, постараюсь внятно объяснить.
    Делаю небольшую доработку для своей конфы, нечто похожее на ЗиК. Доработка - проведение нарядов на производстве.
    Имеется документ "Наряд на NM-13"(к примеру). см. рис.1.
    Наряд выполняется по операциям(спр.Операции).
    Тоесть в одном наряде может быть указано хоть 100 операций для одного человека. Наряды могут проводиться 10 раз в день или 1 раз в неделю, зависит от человеческого фактора.
    При этом одна операция может быть указана в одном документе 1 раз, а может и больше(запись операции проводится за одну смену).
    При каждой записи операции(даже если это одна и та же, и выполнялась в один день) указывается колличество дней, потраченных на нее.
    При проведении наряда я все заношу в ТЗ, сворачиваю ее
    Код ( (Unknown Language)):
    ТабЗнач.Свернуть("ПерсНомер,ПІБ,Зміна,Місяць,Рік","НормГод,Сумма,Кдн");
    И делаю записи в регистр. После (рис.2) в документе "Начисление зарплаты" я выбираю нужные записи с регистра. Ну и тут сталкиваюсь с не доработкой, количество дней в тз сворачиваю и получается неправильное число, тоесть максимально возможное. И в зарплате приходится исправлять это вручную.
    Если свернуть еще по операциям, то тоже будет неправильно.
    Смотрим на пример на рисунке 1. Если подсчитать правильно, у нас должно быть всего 7 рабочих дней. Но после сворачивания получается 9. Если сделать по операциям - то будет 4.
    Вот как сделать правильный механизм для учета дней?
     

    Вложения:

    • 1.gif
      1.gif
      Размер файла:
      22,5 КБ
      Просмотров:
      78
    • 2.jpg
      2.jpg
      Размер файла:
      30,9 КБ
      Просмотров:
      83
  2. puh14

    puh14 Well-Known Member
    1C Team

    Регистрация:
    11 июл 2008
    Сообщения:
    1.412
    Симпатии:
    0
    На рисунке вроде шесть рабочих дней. Плюс для одной и той-же опреации вроде могут быть разные коды. Может надо не по операции, а по её коду сворачивать?
     
  3. TimeDontWait

    TimeDontWait Well-Known Member

    Регистрация:
    4 янв 2010
    Сообщения:
    383
    Симпатии:
    0
    Я имел ввиду по кодам, но какой прикол:
    В один и тот же день могут быть введены две записи(в приведенном документе 2 строчки) для одной и той же операции, а может и для 2 дней.
     
  4. puh14

    puh14 Well-Known Member
    1C Team

    Регистрация:
    11 июл 2008
    Сообщения:
    1.412
    Симпатии:
    0
    То есть на рисунке эти шесть строк сворачиваться должны в 4 дня , т.к. первая строка в группе - это один день, а последующиее две - второй? и то-же самое, когда дойдешь до следующей группы. Правильно понял?

    Может правильнее будет привязаться к нормо-часам/число раб. часов в день? (Правда в примере получается, что пахали 25 часов в сутки ;-) )
     
  5. TimeDontWait

    TimeDontWait Well-Known Member

    Регистрация:
    4 янв 2010
    Сообщения:
    383
    Симпатии:
    0
    Правильно поняли, а записи я случайные выделил, чтоб показать суть. В данном случае там где по 9.56 нормчасы - это один день.
    А нормчасы зависят от колличества изделий:
    НормЧасы=(нормчасаоперации*колштук)/1000
    по-этому привязку осуществить к ним не получится.
    Там где колонка НормЧ, это реквизит операции, норма для данной операции для 1000 штук(вроде). Просто указывается в документе. Тоесть тут смотреть на последнюю колонку, в ней по вышеуказанной формуле получаем нормчасы
     
  6. puh14

    puh14 Well-Known Member
    1C Team

    Регистрация:
    11 июл 2008
    Сообщения:
    1.412
    Симпатии:
    0
    На скрине есть колонка Норм в которой идут нормо-часы. Сложил все нормочасы, поделил на 9,56 и получил 6,91, что в округлении до целого вверх дает семь дней. Может так прокатит?
     
  7. TimeDontWait

    TimeDontWait Well-Known Member

    Регистрация:
    4 янв 2010
    Сообщения:
    383
    Симпатии:
    0
    А если смена не полная, если день скороченный, округлит неправильно.. но щас попрошу еще записи за неделю, попробую сложить - увижу, что получится
     
  8. TimeDontWait

    TimeDontWait Well-Known Member

    Регистрация:
    4 янв 2010
    Сообщения:
    383
    Симпатии:
    0
    нет, не покатит все-равно. К примеру простая увольнительная, и нормчасы в -
    Вот если б реализовать 2 табличные части, во второй указывать сотр и колдней отработанных для этого наряда..
     
  9. TimeDontWait

    TimeDontWait Well-Known Member

    Регистрация:
    4 янв 2010
    Сообщения:
    383
    Симпатии:
    0
    Могу выслать мд-шник поиграться
     
  10. puh14

    puh14 Well-Known Member
    1C Team

    Регистрация:
    11 июл 2008
    Сообщения:
    1.412
    Симпатии:
    0
    При таких условиях свертка ТЗ тебе вряд-ли поможет. Тут скорее надо перебирать строки и отнимать нормочасы (положительные) от нормочасов по дню. Как в ноль или ниже ушло - значит новый день пошел.
     
  11. TimeDontWait

    TimeDontWait Well-Known Member

    Регистрация:
    4 янв 2010
    Сообщения:
    383
    Симпатии:
    0
    Буду пробывать, пока спасибо и за это
     
Загрузка...

Поделиться этой страницей