[ОТВЕТИТЬ]
26.08.2010 03:00
duxovniy
 
Супермаг2000 1.026 сп5
на большом ценнике не отображается PLU для новых карточек
1. карточки товаров весовые
2. активные, проставлена цена, артикул, штрихкод,
3. добавлены в весы (раздел-оборудование-электронные весы) "PLU" там есть
4. ценник показывает "PLU" товаров созданные ранее (ранее карточки создавали в иной программе в СМ импортировали)
5. при попытке "смена номеров товаров" (раздел-оборудование-электронные весы) получил:

>>> Запись 1
Источник: Microsoft OLE DB Provider for Oracle
HRESULT=80040e2f custom=1 SQLState=<none>
ORA-00001: нарушено ограничение уникальности (SUPERMAG.SLCARTSCALEMAP_PLU_U)

>>> Запись 2
Источник: SmLibaryBase trace
HRESULT=80004005 custom=0 SQLState=<none>
update Supermag.SLArtScaleMap set Plu=2where Plu=2342 and LocID=35 and DepID=1
26.08.2010 07:28
OlegON
 
Предлагаю очистить список на весы через интерфейс, потом через табличку %ARTSCALEMAP (не помню префикс)
26.08.2010 10:54
duxovniy
 
Удалил через интерфейс загружаемые карточки, почистил таблицы "SLArtScaleMap" и "SLArtScaleMapChPt" заново добавил все карточки аккуратно добавились начиная с 1 плу. но к сожалению новые карточки на ценнике не показали плу.
26.08.2010 11:04
duxovniy
 
на чистой базе создавал карточку и с ценником (плу) все было ок.
сомнения на некорректное создание карточки отпадает
26.08.2010 11:06
John Doe
 
Ошибка при переименовании пропала? Наверное, нужно внимательно, вдумчиво искать разницу между карточками. Ценник стандартный?
26.08.2010 12:30
duxovniy
 
Перенормировка plu по алфавитном порядке артикулов прошла успешно. разница карточек в интерфейсе СМ нет. таким же макаром созданная карточка на новой базе печатает плу.
Ценник "price_card_az_scale_printer.rep"
26.08.2010 12:33
Dim
 
на карточке, на кот. не печатается ПЛУ, галка "Грузить в весы" стоит? ШК весовой есть?
26.08.2010 12:35
Mtirt
 
Может чтобы исключить вопрос самого ценника, попробуем те, на которых обычно заведомо печатает: s1, s9, s20?
26.08.2010 12:50
duxovniy
 
кажется ценник... протестировал стандартные ценники "price_card_l1.rep" плу показалось. теперь надо понят с какой таблицы берется.
26.08.2010 14:29
duxovniy
 
вот и задача найти исходник price_card_s1.rep
26.08.2010 22:38
duxovniy
 
нашел исходник нашего ценника, открыл на Репорт Буилдере не понравился формула PLU

function CF_PLUFormula return Char is
begin
if (:is_scale = 0) then return '';
end if;
for c in (select s.PLU
from supermag.SLArtScaleMap s, supermag.smstoreunits u
where s.StoreUnit = u.barcode
and s.LocID = :P_Loc
and s.state=0
and u.article = :article)
loop
return 'PLU: '||to_char(c.PLU);
end loop;
return '';
exception when others then return '';
end;

Ош. 201 в строке 6, столбце 18
идентификатор 'SUPERMAG.SLARTSCALEMAP' должен быть обявлен
Ош. 0 в строке 5, столбце 13
SQL Statement ignored
...
26.08.2010 23:04
YuraZ
 
Цитата:
duxovniy нашел исходник нашего ценника, открыл на Репорт Буилдере не понравился формула PLU

function CF_PLUFormula return Char is
begin
if (:is_scale = 0) then return '';
end if;
for c in (select s.PLU
from supermag.SLArtScaleMap s, supermag.smstoreunits u
where s.StoreUnit = u.barcode
and s.LocID = :P_Loc
and s.state=0
and u.article = :article)
loop
return 'PLU: '||to_char(c.PLU);
end loop;
return '';
exception when others then return '';
end;

Ош. 201 в строке 6, столбце 18
идентификатор 'SUPERMAG.SLARTSCALEMAP' должен быть обявлен
Ош. 0 в строке 5, столбце 13
SQL Statement ignored
...
Надо признать, довольно странный запрос. Здесь таблица smstoreunits совершенно не нужна. Попробуйте заменить ее на:
Код:
function CF_PLUFormula return Char is
begin
  if (:is_scale = 0) then return ''; end if;
  for c in (select s.PLU from supermag.SLArtScaleMap s
              where s.LocID = :P_Loc and s.state=0 and s.article = :article)
  loop
    return 'PLU: '||to_char(c.PLU);
  end loop;
  return '';
exception when others then return '';
end;
Но предварительно запустите вот такой скрипт:
Код:
GRANT SELECT ON supermag.slartscalemap to supermag_user;
Но мне кажется, что в Билдере Вы подключаетесь к базе не под тем пользователем. Пользователь должен быть supermag. Из-за этого и ошибка.
27.08.2010 00:33
duxovniy
 
Спасибо всем. получил результат.

могу поделится своим исходником ценника. :connie_30:
27.08.2010 02:09
YuraZ
 
Цитата:
duxovniy Спасибо всем. получил результат.

могу поделится своим исходником ценника. :connie_30:
Мне кажется есть смысл рассказать в чем была проблема. Ну и конечно выложить исходник :)
27.08.2010 19:47
duxovniy
 
судя по всему проблема была в самом ценнике неправильная компиляция из за неправильной формулы.
а вот и исходник


до простит меня админ
Опции темы


Часовой пояс GMT +3, время: 16:52.

 

Форум сделан на основе vBulletin®
Copyright ©2000 - 2018, Jelsoft Enterprises Ltd. Перевод: zCarot и OlegON
В случае заимствования информации гипертекстовая индексируемая ссылка на Форум обязательна.