您是否尝试过使用别名。
Update b Set b.Preis_Einh = x.Preis, b.Aktion=x.Aktion, b.PreisHerk = x.PreisHerk FROM belege2 b cross apply dbo.GetPreis(b.prodkey, b.Anzahl) x where b.Beleg_Nr = 13599

您是否尝试过使用别名。
Update b Set b.Preis_Einh = x.Preis, b.Aktion=x.Aktion, b.PreisHerk = x.PreisHerk FROM belege2 b cross apply dbo.GetPreis(b.prodkey, b.Anzahl) x where b.Beleg_Nr = 13599