|   |   | 
| 
 | v7: Формекс и запись константы | ☑ | ||
|---|---|---|---|---|
| 0
    
        kupec 09.01.18✎ 14:31 | 
        Есть вот такой простой код
 Константа.SmtpСервер=SmtpСервер; Который не работает....мучался мучался, в итоге нашел странный для меня глюк, а может и не глюк, если не загружать компоненту формекс, то все работает, а если её загрузить, не создавая даже никаких из неё объектов, то данный метод уже не работает. Подскажите в чем дело? версия формекса 2.0.5.108. Кстати метод через константа.установить тоже не записывает. | |||
| 1
    
        Злопчинский 09.01.18✎ 14:35 | 
        1. Сделать полностью пустую конфигурацию и воспроизвести     | |||
| 2
    
        kupec 09.01.18✎ 14:44 | 
        (1) если база абсолютно пустая то и с формексом работает, в той базе в которой надо после загрузки формекса не работает, перепробовал кучу вариантов     | |||
| 3
    
        Злопчинский 09.01.18✎ 14:46 | 
        (2) ищи код     | |||
| 4
    
        kupec 09.01.18✎ 14:47 | 
        (3) а что может блокировать запись?     | |||
| 5
    
        kupec 09.01.18✎ 14:51 | 
        База не пустая, процедура ПриНачалеРаботыСистемы() пустая, все работает, в данной процедуре пишем ЗагрузитьВнешнююКомпоненту(формекс) и все, константа не пишется, база кстати DBF     | |||
| 6
    
        mehfk 09.01.18✎ 14:52 | 
        Для эксперимента - грохни _1sconst и проверь еще раз.     | |||
| 7
    
        kupec 09.01.18✎ 14:55 | 
        (6) буду пробовать, для начала запустил тестирование и исправление.     | |||
| 8
    
        kupec 09.01.18✎ 14:57 | 
        (6) тестирование и исправление не помогла, а где _1sconst найти?     | |||
| 9
    
        kupec 09.01.18✎ 15:00 | 
        (6) нашел, не помогло     | |||
| 10
    
        kupec 09.01.18✎ 15:06 | 
        Скачал последний формекс, не помогает     | |||
| 11
    
        Chieftain 09.01.18✎ 15:09 | 
        (9) а код точно вызывается? на пустой базе из этого md повторяется?     | |||
| 12
    
        kupec 09.01.18✎ 15:14 | 
        смысл такой, есть база данных, не пустая, DBF. 
 Процедура ПриНачалеЗапсукаСистемы() ЗагрузкаDialMail(); ЗагрузкаV7(); ЗагрузкаFormEx(); Загрузка1CPP(); КонецПроцедуры заремариваешь формекс, все сохраняется, разремариваешь не сохраняется. Даже если загрузить только формекс, все равно не то, файл с константами гробил, тестирование делал. НЕ ПОМОГАЕТ, создаю новую базу, загружаю формекс, все сохраняется. Теперь то я понимаю что дело в базе....но вот только где... | |||
| 13
    
        smitti911 09.01.18✎ 15:19 | 
        Проверь региональные стандарты базы и системы     | |||
| 14
    
        Злопчинский 09.01.18✎ 15:21 | 
        1с++ НАДО ГРУЗИТЬ ПЕРВОЙ     | |||
| 15
    
        Злопчинский 09.01.18✎ 15:22 | 
        В базе с проблемой внешним вьювером просмотри таблицу констант - нет ли у тебя на проблемную константу ДВЕ записи в таблице?     | |||
| 16
    
        Злопчинский 09.01.18✎ 15:23 | 
        Проверь - работает ли на других константах.     | |||
| 17
    
        Kigo_Kigo 09.01.18✎ 15:26 | 
        Сделай выгрузку- загрузку базы     | |||
| 18
    
        kupec 09.01.18✎ 15:34 | 
        (16) первым делом проверял на других константах, тоже НЕ работает     | |||
| 19
    
        Масянька 09.01.18✎ 15:37 | 
        (0) Тот же Формекс (2.0.0.108) - все работает.
 Не соответствие типов. Что-то есть в коде, где записываешь константы. Короче, не в формексе дело. В глобальнике: // загружаем 1с++ Отв = ЗагрузитьВнешнююКомпоненту("1cpp.dll"); Если Отв = 0 Тогда Сообщить("Не удалось загрузить компоненту 1cpp.dll."); КонецЕсли; // загружаем FormEx Отв = ЗагрузитьВнешнююКомпоненту("FormEx.dll"); Если Отв = 0 Тогда Сообщить("Не удалось загрузить компоненту FormEx.dll."); Иначе Сервис = СоздатьОбъект("Сервис"); Сервис.ВключитьРаскраскуТаблиц(); КонецЕсли; // загружаем 1sci Отв = ЗагрузитьВнешнююКомпоненту("1sci.dll"); Если Отв = 0 Тогда Сообщить("Не удалось загрузить компоненту 1sci.dll."); КонецЕсли; // загружаем TableDoc Отв = ЗагрузитьВнешнююКомпоненту("TableDoc.dll"); Если Отв = 0 Тогда Сообщить("Не удалось загрузить компоненту TableDoc.dll."); КонецЕсли; // загружаем mxl_doctor.dll Отв = ЗагрузитьВнешнююКомпоненту("mxl_doctor.dll"); Если Отв = 0 Тогда Сообщить("Не удалось загрузить компоненту mxl_doctor.dll."); КонецЕсли; // загружаем SpreadSheet.dll Отв = ЗагрузитьВнешнююКомпоненту("SpreadSheet.dll"); Если Отв = 0 Тогда Сообщить("Не удалось загрузить компоненту SpreadSheet.dll."); КонецЕсли; // загружаем RWidjets.dll Отв = ЗагрузитьВнешнююКомпоненту("RWidjets.dll"); Если Отв = 0 Тогда Сообщить("Не удалось загрузить компоненту RWidjets.dll."); КонецЕсли; | |||
| 20
    
        Масянька 09.01.18✎ 15:38 | 
        +(19) И - как проверяешь, что константа не записалась?     | |||
| 21
    
        kupec 09.01.18✎ 15:43 | 
        (20) глазами     | |||
| 22
    
        kupec 09.01.18✎ 15:43 | 
        загрузка выгрузка базы не помогла     | |||
| 23
    
        mehfk 09.01.18✎ 15:49 | 
        (21) А ты закрой список констант и снова открой.     | |||
| 24
    
        kupec 09.01.18✎ 15:50 | 
        (23) капец....серьезно????     | |||
| 25
    
        Масянька 09.01.18✎ 15:52 | 
        (23) А еще лучше - сохранить константу, выйти (из Предприятия) и снова зайти... Можно очень сильно удивиться...     | |||
| 26
    
        kupec 09.01.18✎ 15:55 | 
        (25) не работает....сейчас пробовал на той же конфигурации, но на SQL версии.......не работает (((( буду искать проблему, если найду отпишусь     | |||
| 27
    
        Chieftain 09.01.18✎ 16:51 | 
        (24) тебе, кстати, вполне серьезно сказали в (14) - могут всякие странности вылезать     | |||
| 28
    
        mehfk 09.01.18✎ 17:14 | 
        (26) А нет у тебя нигде примерно такого кода?
 Процедура ПриНачалеРаботыСистемы() Попытка Сервис = СоздатьОбъект("Сервис"); Сервис.ОбработкаОжидания("глУстановитьДатуЗапретаРедактирования", 1000); Исключение КонецПопытки; КонецПроцедуры // ПриНачалеРаботыСистемы //====================================================================== Процедура глУстановитьДатуЗапретаРедактирования() Если Константа.ДатаЗапретаРедактирования <> ТекущаяДата() - 1 Тогда Константа.ДатаЗапретаРедактирования = ТекущаяДата() - 1; КонецЕсли; КонецПроцедуры // глПроверитьКонстанты | |||
| 29
    
        Злопчинский 09.01.18✎ 18:13 | 
        Ставлю 0.5шоколадки что (с учетом того что в пустой базе все ОК) - что работают 1С++ подписки на события. или какой-то другой код (да Винчи)     | |||
| 30
    
        Chieftain 10.01.18✎ 08:54 | 
        (28)(29) при прямой записи констант, емнип, нет никаких событий     | |||
| 31
    
        kupec 10.01.18✎ 09:56 | 
        НАШЕЛ.....
 в глобальном модуле была процедура Процедура ПриНачалеБлокировкиОбъекта(Объект) её заремарил и все ОК | |||
| 32
    
        kupec 10.01.18✎ 09:57 | 
        какой то в ней есть код, который все это дело блокирует     | |||
| 33
    
        Масянька 10.01.18✎ 09:58 | 
        (31) А ты на формекс гнал... Не хорошо, однако...     | |||
| 34
    
        kupec 10.01.18✎ 09:59 | 
        (33) согласен....     | |||
| 35
    
        Shur1cIT 10.01.18✎ 10:00 | 
        ОГО я думал мамонты уже все вымерли...     | |||
| 36
    
        kupec 10.01.18✎ 10:00 | 
        В итоге что же было, в данной процедуре было обращение к константе, из-за этого и ничего не записывалось. Константа не та, для которой производилось изменение     | |||
| 37
    
        Масянька 10.01.18✎ 10:04 | 
        (35) В природе это большая редкость, но, по счастью, у нас есть. (С) :)     | |||
| 38
    
        Chieftain 10.01.18✎ 11:10 | 
        (37) На карте много белых пятен, где вы не бываете, а мамонты там в изобилии))     | |||
| 39
    
        Chieftain 10.01.18✎ 11:15 | 
        (36) Может там запись другой константы есть?     | |||
| 40
    
        Злопчинский 10.01.18✎ 11:19 | 
        (31) гони полшоколадки!     | |||
| 41
    
        Злопчинский 10.01.18✎ 11:20 | 
        (33) ну так это и есть формексовская поп-проуедура ;-)     | |||
| 42
    
        Масянька 10.01.18✎ 11:34 | 
        (41) Не докапывайся.
 Дело не в "кривом" формексе, а в кривом использовании инструментов формекса. | 
| Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |