Wird im Debugger das doppelte '' angezeigt, oder ist es wirklich drin?
Im Debugger sieht ein ab'cd natürlich aus wie 'ab''cd'
, genauso wie im Quellcode, aber IM String ist natürlich nur ein '.
Meine Beispiele sind mit "Wert kopieren" ausgelesen.
Wie gesagt, dann ist nur 1 Apostroph im String.
Angezeigt/kopiert wird die Schreibweise der String-Konstante.
Darum auch vorne und hinten noch je ein '
Wären es wirklich Doppelte, dann sähe es so aus
'/sap/opu/odata/sap/Z_ISHMED_BASIC_API_SRV/documentsSet(Dokar=''''LDP'''',Doknr=''''10043643970'''',Doktl=''''000'''',Dokvr=''''00'''')/$value'
'/sap/opu/odata/sap/Z_ISHMED_BASIC_API_SRV/documentsSet(Dokar=''LDP'',Doknr=''10043643970'',Doktl=''000'',Dokvr=''00'')/$value'
entspricht
/sap/opu/odata/sap/Z_ISHMED_BASIC_API_SRV/documentsSet(Dokar='LDP',Doknr='10043643970',Doktl ='000',Dokvr='00')/$value
die Konstante hätte aber auch z.B. so aussehen können
'/sap/opu/odata/sap/Z_ISHMED_BASIC_API_SRV/documentsSet(Dokar='#39'LDP'#39',Doknr='#39'10043643970'#39',Doktl='#39'000'#39',Dokvr='#39'00'#39')/$value'
oder in der ausführlichen Schreibweise
'/sap/opu/odata/sap/Z_ISHMED_BASIC_API_SRV/documentsSet(Dokar=' + #39 + 'LDP' + #39 + ',Doknr=' + #39 + '10043643970' + #39 + ',Doktl=' + #39 + '000' + #39 + ',Dokvr=' + #39 + '00' + #39 + ')/$value'
oder oder oder ...
Ein doppeltes ''
in der String-Konstante ist ein '-Zeichen.
Ein einfaches ' am Anfang/Ende/Dazwischen ist der Anfange oder das Ende der Konstante.
Und ''' am Anfang oder Ende sind der Anfang/Ende plus ein '-Zeichen.
Ähnlich wie in C-Sprachen ein \-Zeichen als \\ in String-Konstanten steht.