| FunctionsDelete Method |
Linkar Framework for .NET and Core
Deletes one or several records in file, synchronously only, with XML input and output format.
Namespace: Linkar.Functions.Direct.XMLAssembly: Linkar.Functions.Direct.XML (in Linkar.Functions.Direct.XML.dll) Version: 2.3.1
Syntax public static string Delete(
CredentialOptions credentialOptions,
string filename,
string records,
DeleteOptions deleteOptions = null,
string customVars = "",
int receiveTimeout = 0
)
Public Shared Function Delete (
credentialOptions As CredentialOptions,
filename As String,
records As String,
Optional deleteOptions As DeleteOptions = Nothing,
Optional customVars As String = "",
Optional receiveTimeout As Integer = 0
) As String
public:
static String^ Delete(
CredentialOptions^ credentialOptions,
String^ filename,
String^ records,
DeleteOptions^ deleteOptions = nullptr,
String^ customVars = L"",
int receiveTimeout = 0
)
static member Delete :
credentialOptions : CredentialOptions *
filename : string *
records : string *
?deleteOptions : DeleteOptions *
?customVars : string *
?receiveTimeout : int
(* Defaults:
let _deleteOptions = defaultArg deleteOptions null
let _customVars = defaultArg customVars ""
let _receiveTimeout = defaultArg receiveTimeout 0
*)
-> string
Parameters
- credentialOptions CredentialOptions
- Object with data necessary to access the Linkar Server: Username, Password, EntryPoint, Language, FreeText.
- filename String
- The file name where the records are going to be deleted. DICT in case of deleting a record that belongs to a dictionary.
- records String
- Buffer of records to be deleted.
- deleteOptions DeleteOptions (Optional)
- Object with options to manage how records are deleted, including optimisticLockControl, recoverRecordIdType.
- customVars String (Optional)
- Free text sent to the database allows management of additional behaviours in SUB.LK.MAIN.CONTROL.CUSTOM, which is called when this parameter is set.
- receiveTimeout Int32 (Optional)
- Maximum time in seconds that the client will wait for a response from the server. Default = 0 to wait indefinitely.
Return Value
StringThe results of the operation.
Remarks
Inside the records argument, the recordIds always must be specified. But the originalRecords not always.
When
deleteOptions argument is specified and the
OptimisticLockControl property is set to true,
a copy of the record must be provided before the deletion (originalRecords argument) to use the Optimistic Lock technique.
This copy can be obtained from a previous
Read(CredentialOptions, String, String, String, ReadOptions, FunctionsXML_FORMAT, String, Int32) operation. The database, before executing the deletion,
reads the record and compares it with the copy in originalRecords, if they are equal the record is deleted.
But if they are not equal, it means that the record has been modified by other user and the record will not be deleted.
The record will have to be read, and deleted again.
Example using Linkar;
using Linkar.Functions.Direct.XML;
class Test
{
public string MyDelete()
{
string result = "";
try
{
CredentialOptions credentials = new CredentialOptions("127.0.0.1", "EPNAME", 11300, "admin", "admin");
result = Functions.Delete(credentials, "LK.CUSTOMERS",
"<?xml version=\"1.0\" encoding=\"utf-16\"?>" +
"<LINKAR>" +
" <RECORDS>" +
" <RECORD>" +
" <LKITEMID>2</LKITEMID>
" </RECORD>" +
" </RECORDS>" +
"</LINKAR>");
}
catch (Exception ex)
{
string error = ex.Message;
}
return result;
}
}
Imports Linkar
Imports Linkar.Functions.Direct.XML
Class Test
Public Function MyDelete() As String
Dim result As String = ""
Try
Dim credentials As CredentialOptions = New CredentialOptions("127.0.0.1", "EPNAME", 11300, "admin", "admin")
result = Functions.Delete(credentials, "LK.CUSTOMERS",
"<?xml version=\"1.0\" encoding=\"utf-16\"?>" +
"<LINKAR>" +
" <RECORDS>" +
" <RECORD>" +
" <LKITEMID>2</LKITEMID>
" </RECORD>" +
" </RECORDS>" +
"</LINKAR>")
Catch ex As Exception
Dim[error] As String = ex.Message
End Try
Return result
End Function
End Class
No code example is currently available or this language may not be supported.
No code example is currently available or this language may not be supported.
See Also