Показать сообщение отдельно
Старый 26.10.2005, 13:03   #3  
ATimTim is offline
ATimTim
Участник
 
395 / 13 (1) ++
Регистрация: 10.06.2004
Адрес: Питер
Я говорю не про CustInvoiceTrans.ItemId и не про CustInvoiceTrans.ExternalItemId , а про CustInvoiceTrans.Name, куда попадает и внутреннее и внешнее (клиента) наименование номенклатуры. Конечно, можно вытащить его из CustVentExternalItem по ExternalItemId , но это не устраивает, т.к. в процессе эти названия иногда меняются. А внешнее название, какое оно было на момент формирования проводки, записывается в поле Name, сразу после внутреннего названия. К примеру, есть внутренняя номенклатура Карандаш обычный с внутренним кодом 0001.
Внешний код и название для одного из клиентов 6574 Карандаш простой
При формировании проводки в таблице CustInvoiceTrans появится строка с
ItemId ExternalItemId Name
0001 6574 Карандаш обычный Карандаш простой
Через определенное время клиент настоял на смене внешнего кода на Карандаш простой детский, код оставив без изменений. В этом случае в проводке появится следующая информация
ItemId ExternalItemId Name
0001 6574 Карандаш обычный Карандаш простой детский
По идее, нельзя хранить два значение в одном поле, не по правилам это. Но дело обстоит именно таким образом. В связи с этим, мне необходимо отделить мух от котлет, вытащив из поля Name только внешний код. Каких-то спец символов между внутр. и внеш. названием я не обнаружил.