|
обработка в файловом варианте работает а в серверном нет. Почему? | ☑ | ||
---|---|---|---|---|
0
werta2007
02.03.16
✎
23:36
|
Доброго времени суток всем.
Недавно перешли на бухгалтерию Бухгалтерия предприятия, редакция 3.0 (3.0.43.123). История следующая. Была на бух 2.0 внешняя обработка(я ее писала). После перехода на бух 3.0 ее встроили в конфигурацию и запускается только под толстым клиентом. Переделала обработку, но в файловом варианте, оттестировала, все ок. Поставили ее на серверную базу и тут полезли ошибки, типа: Переменная не определена (БухгалтерскийУчетПереопределяемый) Как не определена, если это общий модуль? Что не так? |
|||
1
Xapac
02.03.16
✎
23:37
|
(0)кидайте обработку
|
|||
2
werta2007
02.03.16
✎
23:39
|
куда? и смысл? если там еще внутренние изменения конфигурации, и тащит она данные из самописной торговой базы, к которой я не имею никакого отнощения.
|
|||
3
werta2007
02.03.16
✎
23:40
|
смысл обработки, вытащить данные из SQL-ой базы и разложить в соответстующие документы.
|
|||
4
werta2007
02.03.16
✎
23:43
|
я сразу скажу, что 8.3 только открыла, до этого писала на 8.2, и то по минимуму старалась что-то дописывать.
|
|||
5
werta2007
02.03.16
✎
23:53
|
Переменная не определена (БухгалтерскийУчетПереопределяемый)
СчетаУчета = <<?>>БухгалтерскийУчетПереопределяемый.ПолучитьСчетаУчетаНоменклатуры(Организация, НовСТР.Номенклатура, Склад); еременная не определена (ОбщегоНазначенияБП) Если <<?>>ОбщегоНазначенияБП.ЕстьТабЧастьДокумента("Товары", ДокументБазы.Метаданные()) = Истина Тогда я все проверила БухгалтерскийУчетПереопределяемый и ОбщегоНазначенияБП это общие модули, ПолучитьСчетаУчетаНоменклатуры и ЕстьТабЧастьДокумента тоже существуют в соответствующих модулях. Почему эта ошибка в серверной базе? в файловой все работает прекрасно? Что нужно чтобы избавиться от этих ошибок? |
|||
6
Garykom
гуру
02.03.16
✎
23:56
|
освойте уже &НаКлиенте и &НаСервере
|
|||
7
werta2007
03.03.16
✎
00:07
|
(6)да сижу разбираюсь и с этим.
Вопрос: я прочитала, что по-умолчанию все происходит на сервер, если конкретная директива не указана. Следовательно эти общие модули, которые выходит ошибка выполняются на клиенте, и следовательно и мои все функции нужно уложить на клиент? я правильно поняла? |
|||
8
pessok
03.03.16
✎
00:11
|
(7) если тыкнуть правой кнопкой на модуль и открыть палитру свойств, то там написано, откуда модуль может вызываться и где работать.
|
|||
9
werta2007
03.03.16
✎
00:24
|
спасибо огромное!!! кажется получается!!!
|
|||
10
werta2007
03.03.16
✎
00:55
|
ха! стала неактивной кнопка, по которой происходит загрузка документов. Флаги доступности не изменяла. Может ли это быть связано, что процедуру этой кнопки отправила на сервер?
как поступить в данном случае? |
|||
11
Garykom
гуру
03.03.16
✎
01:47
|
(10) сделать процедуру кнопки на клиенте и из нее вызывать серверную
это классика, клиент передает на сервер некие данные, сервер обрабатывает и возвращает результат на клиент надо было 1С принудительно разнести серверные и клиентские модуля код а не эти директивы, многие путаются |
|||
12
ДенисЧ
03.03.16
✎
06:39
|
(10) сделать клиентскую обработку кнопки...
|
|||
13
Провинциальный 1сник
03.03.16
✎
07:18
|
(11) "надо было 1С принудительно разнести серверные и клиентские модуля код а не эти директивы, многие путаются"
Эти директивы - прогиб под веб-программирование. Там тоже серверный пхп и клиентский джаваскрипт в тексте страниц вперемешку. Хотя в рамках парадигмы 1с действительно логинчее было бы разделять модули на клиентские и серверные. |
|||
14
werta2007
03.03.16
✎
07:35
|
ДОБРОЕ УТРО.
Да я поняла, но как же быть, если в тексте клиентской кнопки вызывается общий модуль или серверная функция или процедура? |
|||
15
Провинциальный 1сник
03.03.16
✎
07:40
|
(14) На клиенте вызывается клиентская процедура, из неё вызывается серверная.
|
|||
16
werta2007
03.03.16
✎
07:46
|
да. буду по чайниковски))
я проставила &НаКлиенте перед процедурой кнопки, но кнопка вызывает серверную процедуру и следовательно выдает ошибку Ошибка инициализации модуля: Обработка.ОбменСБисСК.Форма.Форма.Форма по причине: {Обработка.ОбменСБисСК.Форма.Форма.Форма(60,2)}: Процедура или функция с указанным именем не определена (ОбработатьДерево) <<?>>ОбработатьДерево (1); |
|||
17
hhhh
03.03.16
✎
08:07
|
ну посмотрите, может на форме нет этой процедуры?
|
|||
18
Drac0
03.03.16
✎
08:10
|
(16) Ты, похоже, уже из серверной процедуры пытаешься вызвать клиентский метод. Не надо так.
|
|||
19
John83
03.03.16
✎
08:21
|
БухгалтерскийУчетПереопределяемый случаем не глобальная?
|
|||
20
John83
03.03.16
✎
08:22
|
ан нет
|
|||
21
Мимохожий Однако
03.03.16
✎
08:24
|
Иногда помогает перенос процедур из общих модулей в свою обработку. Совет для тех, кто не хочет разбираться с нюансами.
|
|||
22
werta2007
03.03.16
✎
10:50
|
(17) нет, из клиента серверную
&НаКлиенте Процедура КоманднаяПанель3Обновить(Кнопка) ОбработатьДерево (1); КонецПроцедуры &НаСервере Процедура ОбработатьДерево(КоличествоДействий) ... конецпроцедуры |
|||
23
Garykom
гуру
03.03.16
✎
10:53
|
(22) внутри ОбработатьДерево что вызывается? оттуда клиента уже низзя, только сервер можно вызывать
|
|||
24
werta2007
03.03.16
✎
11:07
|
(23) из ОбработатьДерево уже начинают вызываться общие модули типа БухгалтерскийУчетПереопределяемый, поэтому я переде этой процедурой уже поставила &НаСервере.
|
|||
25
Garykom
гуру
03.03.16
✎
11:09
|
(24) а "БухгалтерскийУчетПереопределяемый" это серверный код? а "Экспорт" стоит?
|
|||
26
werta2007
03.03.16
✎
11:10
|
еще вопрос: я запускаюсь отладчиком Толстый клиент(управляемое приложение):Начать отладку.
Это толстый клиент или все-таки управляемые формы, тк. я не стала переписывать свою обработку под управляемые формы. |
|||
27
werta2007
03.03.16
✎
11:13
|
БухгалтерскийУчетПереопределяемый это общий модуль конфигурации. Посмотрела, он может вызываться как с сервера, так и внешнее соединение. в процедурах используемых из него, например Функция ПолучитьСчетаРасчетовСКонтрагентом(Знач Организация, Знач Контрагент, Знач Договор) Экспорт
как видим экспорт стоит |
|||
28
werta2007
03.03.16
✎
11:36
|
нашла как можно запуститься в Толстый клиент(обычное приложение). Но результат тот же
|
|||
29
Garykom
гуру
03.03.16
✎
11:41
|
||||
30
werta2007
03.03.16
✎
11:53
|
Спасибо огромное за ссылки.
Разобралась. Проблема была оказывается в режиме в котором я запускалась. подрядчик сказал в толстом клиенте, но не уточнил, что нужно в обычном приложении. Зашла в конфигуратор, установила сервис- параметры - управляемое и обычное приложение. Потом вернула обработку в первоначальное сотояние, без &НаКлиенте и &НаСервере, запустилась и УРА!!! Спасибо всем за поддержку!!! А на толкнулась я на мысль вот здесь Старые поделки для 8.2 запустить на 8.3 |
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |