Restriction on LINQ Expressions #

Not all LINQ expressions are technically feasible or make sense in LINQ to SAP.
Apart from classical expressions like the operators <, > and =, LINQ to SAP offers all character-like functions:

  • Equals (=)
  • Contains (LIKE “%..%”)
  • StartsWith (LIKE “%…”)
  • EndsWith (LIKE “…%”)
  • InList

InList is only active when ERPConnect.Linq has been specified in a using statement (or in the imports in VB).

using ERPConnect.Linq; 
var MyTexts = from t in sc.MAKTList 
         where t.MATNR.StartsWith("100") 
         && t.SPRAS.InList("D","E") 
         select t;

RFC_READ_TABLE Restrictions #

When extracting tables from older SAP releases you may encounter several restrictions when using the SAP standard function module (RFC_READ_TABLE):

  • The overall length of all columns to be extracted must not exceed 512 bytes.
  • Depending on the SAP version there may be other restrictions. It is not possible to extract data from tables that contain one or more columns of the data type f (FLTP, floating point), DEC (decimal, e.g. for percentage) or x (RAW, LRAW).
  • Poor extraction performance with larger tables.

Warning! Error while converting value ‘*.0’ of row 1530, column 3
The SAP standard module RFC_READ_TABLE for table extraction can only extract the ABAP data type DEC to a limited extent. This leads to the mentioned example error during extraction.