Build of the productindexen. The old indexes stored in global KP1, KP2, KP3, KPL, KPH and KPM and the new indexen Prod.SearchIndex The new indexes include the aliases stored in product kenmerkgroep OEI Prod.Product,BL.Prod 1 %RegisteredObject,APPS.PM.ProductZoekIndexBuilder %Integer 1 Prod.Product 1 %Integer 1 %Integer 1 %Integer 1 %Integer 1 %Integer 1 %Integer 1 %Integer 1 Not available for WWWEC;DYNALOG;WWWOL %List 1 %String 1 1 4 OEI Prod.Product 1 PRNr Delete for a product all the existing indexes Add for a product all the indexes Old:%Boolean 1 1 1 BIndex %Boolean op te roepen van uit kenmerken %String s bl=##class(BL.Prod.SearchBuildIndex).Instantiate() d bl.Init(2814) w bl.ValidateNewAlias("I","03914568") Type = I, K, LR Type,Value %String s bl=##class(BL.Prod.SearchBuildIndex).Instantiate() d bl.Init(2814) w bl.Validate() Validate look for usage of double keys. Double keys can exist within one product (aliases) and can also exist between different products arNewValues %String Validate look for usage of double keys. Double keys can exist within one product (aliases) and can also exist between different products Format lbDouble :$LB( $LB(PRNr,IndexType,Key,StrippedKey,OrgineIndex , OrgineValidate) ) %String PRNr Validation of keys within one product and with other products Erase of old indexes 1 Rebuild old indexes PRNr 1 compression of the shortdescription with adding of section, stock/nonstock and first letter of identnr 1 KortTxt,Sectie,Stock,IdentNr 1 1 Type,Key,From Type,Key,From The key is stripped from all punctuation and separators A blank is added to change nummeric values to string Type,Value 1 D ##class(BL.Prod.SearchBuildIndex).RebuildAll() when old= true then the indexes in the old and the new format are deleted and recreated when Old= not true then the indexes in the old format are not(!) deleted and not(!) recreated 1 Old:%Boolean D ##class(BL.Prod.SearchBuildIndex).Test(522295) 1 PRNr 1 Is it an Orgalux product ? [Previously private] 1 objref 0 %Boolean Dubbels:%List %String