Перейти из форума на сайт.

НовостиФайловые архивы
ПоискАктивные темыТоп лист
ПравилаКто в on-line?
Вход Забыли пароль? Первый раз на этом сайте? Регистрация
Компьютерный форум Ru.Board » Компьютеры » Прикладное программирование » 1C Программирование и поддержка

Модерирует : ShIvADeSt

ShIvADeSt (29-09-2006 09:19): продолжаем здесь
http://forum.ru-board.com/topic.cgi?forum=33&topic=7403
 Версия для печати • ПодписатьсяДобавить в закладки
Страницы: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105

   

batva



crazy administrator
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Предыдущая тема доступна здесь.
 
1С Предприятие "Конфигурирование и Администрирование"
 
Тема посвящена вопросам разработки, функционирования и обслуживания конфигураций 1С Предприятие.
 
Обсуждаются все версии, можно задавать любые вопросы, кроме нарушающих авторское право.  
Советы в подборе конфигураций в разделе программы
За  вопросами "где достать?", "откуда скачать?" Специальный сериал в Варезнике
 
Так же вопросы можно задавать и много полезного узнать на:
  • Волшебный форум
  • Территория 1С на кубани
     
    Некоторые из форумов посвященных бухучету:
  • Клерк.Ру (тут в основном Россияне)
  • Дебет-Кредит (тут в основном Украина)
     
    Для тех кто осознал что лучший способ эксплуатации 1С это вариант 1С+SQL:
  • Некоторое количество информации по этому вопросу (1С:Предприятие и SQL Server: практика использования. Решение проблем связки 1С и SQL, оптимизация. Книги по 1С, обработки, отчеты.)
  • Еще один ресурс по 1С+SQL  
     
    Ну и неплохо бы зайти еще вот сюда и сюда

    Некоторые вопросы касательно работы с SQL сервером можно задать здесь, например как установить, почему неработает, как написать SQL запрос для получения остатков склада
    Вопросы о том где взять SQL сервер можно задать здесь

     
    Для начинающих и не только:
  • Учебник по 1с  
  • Первые шаги  

    Коллеги,если вы решили спросить,или посоветоваться по возникшим у Вас вопросам,убедительная просьба придерживаться двух простых правил:
    1.Указывайте версию платформы 1С и ,желательно, конфигурацию.
    2.Постарайтесь сформулировать свой вопрос так,чтобы он был понятен другим участникам конференции.

     
    Желающие получить билеты для сдачи экзамена 1С:Специалист могут обращаться ко мне в ПМ //fol

  • Всего записей: 12593 | Зарегистр. 07-01-2001 | Отправлено: 18:41 07-06-2005 | Исправлено: fol, 12:38 28-09-2006
    mrFiX



    Advanced Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    tswanea

    Цитата:
    что я не делаю правильно?

    Все.
    Хотя если ты хочешь заполнить справочник номенклатуры каким-то значением - то вполне подойдет...
     
    А что ты вообще хотел сделать ?
     
     
     

    Цитата:
    Товар=СпрТовара.ТекущийЭлемент();  

    А вот тут (как мне кажется) все равно Надо было сделать:
     - СпрТовара.НайтиПоКоду или НайтиПоНаименованию
    А потом уже присваивать...

    Всего записей: 1474 | Зарегистр. 22-02-2002 | Отправлено: 16:57 05-01-2006
    tswanea



    Full Member
    Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
    ALL
    спасибо всем! я просто забыл поставить НоваяСтрока()
    я просто это делаю в моей базе. Это для того что не вели бухи 3 раза тоже самое а тока один раз и все

    ----------
    ... И развернутся врата ада, и силы тьмы обрушатся на землю ...

    Всего записей: 436 | Зарегистр. 03-08-2004 | Отправлено: 20:58 05-01-2006
    kevinkf



    Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    VesAlex

    Цитата:
    Да сверта некуда не годится кучу ошибок выдала плюс база с 500 мегабайт стала 600 слихой, длилась около суток, у них база с 2003 года

    Это просто тебе базу надо почистить от удаленных записей (не путать с помеченными на удаление)
    Ты ее сжать попробуй в конфигураторе (исправление ошибок и сжатие базы). Помогает.

    Всего записей: 308 | Зарегистр. 24-05-2004 | Отправлено: 06:01 06-01-2006
    tswanea



    Full Member
    Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
    при нажатью на кнопку печать надо чтобы выпольнилось данная процедура:
     
    Процедура НовыйДок
        НачатьТранзакцию();
        НовыйДокумент=СоздатьОбъект("Документ.РасходнаяНакладная");
        НовыйДокумент.Новый();
        НовыйДокумент.УстановитьНовыйНомер();
        НовыйДокумент.ДатаДок=ДатаДок;
        ВыбратьСтроки();
        Пока ПолучитьСтроку()=1 Цикл
            НовыйДокумент.НоваяСтрока();
            НовыйДокумент.Штрих=Штрих;
            НовыйДокумент.Товар=Товар;
            НовыйДокумент.Количество=Количество;
            НовыйДокумент.Единица=Единица;
            НовыйДокумент.Цена=Цена;
            НовыйДокумент.Сумма=Сумма;
            НовыйДокумент.СтавкаНДС=СтавкаНДС;
            НовыйДокумент.НДС=НДС;
            НовыйДокумент.Всего=Всего;
        КонецЦикла;
        НовыйДокумент.Записать();
        НовыйДокумент.Провести();
        ЗафиксироватьТранзакцию();
        
          // После чего записали и провели созданный документ надо в текущим документе все стереть:  
        ВыбратьСтроки();
        Пока ПолучитьСтроку()=1 Цикл
            УдалитьСтроки();
        КонецЦикла;
    КонецПроцедуры  
         
     после этой процедуры создаеться документ (проведен) но тока в его табл. частьи все пусто,  
     если убрать функцию УдалитьСтроки() то в табл. частьи есть все так как надо.
     В чем может быть проблемма?

    ----------
    ... И развернутся врата ада, и силы тьмы обрушатся на землю ...

    Всего записей: 436 | Зарегистр. 03-08-2004 | Отправлено: 01:37 07-01-2006 | Исправлено: tswanea, 01:38 07-01-2006
    VladZetRu

    Full Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    [q]ВыбратьСтроки();
    Пока ПолучитьСтроку()=1 Цикл
          УдалитьСтроки();
    КонецЦикла; У тебя выбран новый документ, естественно этот код будет работать для него.
    Что бы он сработал для Первичного документа его нужно преварительно выбрать.

    Всего записей: 467 | Зарегистр. 14-03-2005 | Отправлено: 13:02 09-01-2006
    mrFiX



    Advanced Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    А зачем там вообще цикл ?
    УдалитьСтроки() - удаляет все строки табличной части, в отличие от УдалитьСтроку()

    Всего записей: 1474 | Зарегистр. 22-02-2002 | Отправлено: 13:20 09-01-2006
    tswanea



    Full Member
    Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
    VladZetRu

    Цитата:
    У тебя выбран новый документ, естественно этот код будет работать для него.  Что бы он сработал для Первичного документа его нужно преварительно выбрать.

    не понял?
     
     
    mrFiX

    Цитата:
    А зачем там вообще цикл ?  УдалитьСтроки() - удаляет все строки табличной части

    да это все равно, я просто забыл снять цикл и тд

    ----------
    ... И развернутся врата ада, и силы тьмы обрушатся на землю ...

    Всего записей: 436 | Зарегистр. 03-08-2004 | Отправлено: 03:57 10-01-2006
    VladZetRu

    Full Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    tswanea
    Процедура НовыйДок
       Док1=ТекущийДокумент();
     
       НачатьТранзакцию();
       ****
       ЗафиксироватьТранзакцию();  
     
    Док1.УдалитьСтроки();

    Всего записей: 467 | Зарегистр. 14-03-2005 | Отправлено: 19:32 10-01-2006
    Meydzin



    Member
    Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
    я не особенно силен в программировании 1С
    Подскажите как сделать чтобы в определенную строку автоматически подставлялся автор документа??

    Всего записей: 276 | Зарегистр. 11-02-2005 | Отправлено: 10:12 11-01-2006
    mrFiX



    Advanced Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    Meydzin
    Строку чего ?
     
    ОпределеннаяСтрока=Автор
     
    P.S.> Правильно заданный вопрос - повышает шансы полуучить правильны2й ответ...

    Всего записей: 1474 | Зарегистр. 22-02-2002 | Отправлено: 10:21 11-01-2006
    Meydzin



    Member
    Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
    mrFiX
    ээхх знад бы как правильно вопрос задать
    в общем есть документ в котором есть поле ввода,
    пока выбирается из справочника сотрудников
    хочу сделать так чтобы автоматически подставлялся туда автор документа
    то бишь под кем документ был сделан

    Всего записей: 276 | Зарегистр. 11-02-2005 | Отправлено: 11:09 11-01-2006
    LaCastet



    Silver Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    Meydzin
    Заходишь в конфу. Находишь свой документ. Открываешь Модуль. Находишь там Процедуру ПриОткрытии(). И вписываешь туда такие строки:
    Автор=СоздатьОбъект("Справочник.Сотрудники");
    Автор.НайтиПоНаименованию(ИмяПользователя());
    ИмяПоля(т.е. куда ты хочешь записать автора)=Автор.ТекущийЭлемент();
     
    P.S. Тока для этого нужно, чтобы Пользователь существовал под таким же Наименованием в Справочнике Сотрудников.

    ----------
    Пиво — это еще одно доказательство того, что Господь любит нас и хочет, чтоб мы были счастливы!

    Всего записей: 4566 | Зарегистр. 27-07-2005 | Отправлено: 12:01 11-01-2006 | Исправлено: LaCastet, 12:02 11-01-2006
    AlexBX

    Advanced Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    Meydzin
    Это решение существует во всех типовых конфигурациях 1с.
    лучше иметь неизменяемый реквизит документа, чем поле ввода - меньше возможностей для махинаций. Реализовано так.  
    1. У всех документов есть общий реквизит - Автор (ТипЗначения = Справочник.Пользователи).
    2. В глобальном модуле в процедуре ПриНачалеРаботыСистемы имеется код такого типа:

    Код:
    Спр=СоздатьОбъект("Справочник.Пользователи");
         Если ПустаяСтрока(ИмяПользователя())=1 Тогда
               Предупреждение("Пользователь не зарегистрирован в списке пользователей!"+РазделительСтрок+"Работа в программе завершена!",15); Возврат;
         Иначе  
              Если Спр.НайтиПоКоду(ИмяПользователя())=0 Тогда
                   Спр.Новый(); Спр.Код=ИмяПользователя();
                   Спр.Наименование=ПолноеИмяПользователя();
                   Спр.ОсновнаяФирма=Константа.ОсновнаяФирма;
                   Спр.Записать();
              КонецЕсли;
         КонецЕсли;
    Пользователь=Спр.ТекущийЭлемент();

    3. В каждом документе в процедурах ВводНового и ВводНаОсновании добавлена строка
        Автор=Пользователь;
    4. на форме документа вставлен элемент диалога типа Текст с формулой "Автор"
    Все.

    Всего записей: 1600 | Зарегистр. 25-09-2002 | Отправлено: 12:16 11-01-2006
    Meydzin



    Member
    Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
    ERR Автор.НайтиПоНаименованию(Наименование<<?>>);  
    {Документ.ПриемВРемонт.Модуль Документа(5)}: Переменная не определена (Наименование)
    При проверке модуля обнаружены синтаксические ошибки!

    Всего записей: 276 | Зарегистр. 11-02-2005 | Отправлено: 12:19 11-01-2006
    LaCastet



    Silver Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    Meydzin

    Цитата:
    Автор.НайтиПоНаименованию(Наименование<<?>>);

    Не Наименование, а ИмяПользователя()


    ----------
    Пиво — это еще одно доказательство того, что Господь любит нас и хочет, чтоб мы были счастливы!

    Всего записей: 4566 | Зарегистр. 27-07-2005 | Отправлено: 12:41 11-01-2006
    Meydzin



    Member
    Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
    LaCastet
    то же самое
    Автор.НайтиПоНаименованию(ИмяПользователя<<?>>);  
    {Документ.ПриемВРемонт.Модуль Документа(5)}: Переменная не определена (ИмяПользователя)
    При проверке модуля обнаружены синтаксические ошибки!

    Всего записей: 276 | Зарегистр. 11-02-2005 | Отправлено: 13:47 11-01-2006
    LaCastet



    Silver Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    Meydzin

    Цитата:
    Автор.НайтиПоНаименованию(ИмяПользователя<<?>>);

    Дорогой мой: а скобки ИмяПользователя() для чего были поставлены???

    ----------
    Пиво — это еще одно доказательство того, что Господь любит нас и хочет, чтоб мы были счастливы!

    Всего записей: 4566 | Зарегистр. 27-07-2005 | Отправлено: 13:54 11-01-2006
    Meydzin



    Member
    Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
    LaCastet
    Сорри скобок не заметил  
    процедуру добавил но эффекта никакого
    при добавлении в модуль документа просто никакого эффекта
     
    при добавлении в модуль формы
     
    Автор=СоздатьОбъект("Справочник.Сотрудники");  
    {Документ.ПриемВРемонт.Форма.Модуль(3)}: Неверное присвоение значения. Используйте: .ТекущийЭлемент()
     
    и еще в поле ввода тип какой должен быть?

    Всего записей: 276 | Зарегистр. 11-02-2005 | Отправлено: 14:02 11-01-2006
    LaCastet



    Silver Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    Meydzin
    У тебя там наверное Автор-- это поле документа.
    Сделай СпрСотр=СоздатьОбъект("Справочник.Сотрудники");
    А когда будешь присваивать значение Автор=СпрСотр.ТекущийЭлемент();

    ----------
    Пиво — это еще одно доказательство того, что Господь любит нас и хочет, чтоб мы были счастливы!

    Всего записей: 4566 | Зарегистр. 27-07-2005 | Отправлено: 14:29 11-01-2006
    Meydzin



    Member
    Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
    вот так чтоль??
     
    - все равно не получается
     
    Процедура ПриОткрытии()
        СпрСотр=СоздатьОбъект("Справочник.Сотрудники");
        Автор=СоздатьОбъект("Справочник.Сотрудники");  
        Автор.НайтиПоНаименованию(ИмяПользователя());  
        Автор=СпрСотр.ТекущийЭлемент();
        КтоПринял=Автор.ТекущийЭлемент();  
     
    КонецПроцедуры

    Всего записей: 276 | Зарегистр. 11-02-2005 | Отправлено: 14:51 11-01-2006
       

    Страницы: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105

    Компьютерный форум Ru.Board » Компьютеры » Прикладное программирование » 1C Программирование и поддержка
    ShIvADeSt (29-09-2006 09:19): продолжаем здесь
    http://forum.ru-board.com/topic.cgi?forum=33&topic=7403


    Реклама на форуме Ru.Board.

    Powered by Ikonboard "v2.1.7b" © 2000 Ikonboard.com
    Modified by Ru.B0ard
    © Ru.B0ard 2000-2024

    BitCoin: 1NGG1chHtUvrtEqjeerQCKDMUi6S6CG4iC

    Рейтинг.ru