| FunctionsUpdate Method |
Linkar Framework for .NET and Core
Update one or several records of a file, synchronously only, with MV input and output format.
Namespace: Linkar.Functions.Direct.MVAssembly: Linkar.Functions.Direct.MV (in Linkar.Functions.Direct.MV.dll) Version: 2.3.1
Syntax public static string Update(
CredentialOptions credentialOptions,
string filename,
string records,
UpdateOptions updateOptions = null,
string customVars = "",
int receiveTimeout = 0
)
Public Shared Function Update (
credentialOptions As CredentialOptions,
filename As String,
records As String,
Optional updateOptions As UpdateOptions = Nothing,
Optional customVars As String = "",
Optional receiveTimeout As Integer = 0
) As String
public:
static String^ Update(
CredentialOptions^ credentialOptions,
String^ filename,
String^ records,
UpdateOptions^ updateOptions = nullptr,
String^ customVars = L"",
int receiveTimeout = 0
)
static member Update :
credentialOptions : CredentialOptions *
filename : string *
records : string *
?updateOptions : UpdateOptions *
?customVars : string *
?receiveTimeout : int
(* Defaults:
let _updateOptions = defaultArg updateOptions 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
- Name of the file being updated.
- records String
- Buffer of record data to update. Inside this string are the recordIds, the modified records, and the originalRecords. Use StringFunctions.ComposeUpdateBuffer (Linkar.Strings library) function to compose this string.
- updateOptions UpdateOptions (Optional)
- Object with write options, including optimisticLockControl, readAfter, calculated, dictionaries, conversion, formatSpec, originalRecords.
- 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 and the modified records always must be specified. But the originalRecords not always.
When
updateOptions argument is specified and the
OptimisticLockControl property is set to true, a copy of the record must be provided before the modification (originalRecords argument)
to use the Optimistic Lock technique. This copy can be obtained from a previous
Read(CredentialOptions, String, String, String, ReadOptions, String, Int32) operation. The database, before executing the modification,
reads the record and compares it with the copy in originalRecords, if they are equal the modified record is executed.
But if they are not equal, it means that the record has been modified by other user and its modification will not be saved.
The record will have to be read, modified and saved again.
Example using Linkar;
using Linkar.Functions.Direct.MV;
class Test
{
public string MyUpdate()
{
string result = "";
try
{
CredentialOptions credentials = new CredentialOptions("127.0.0.1", "EPNAME", 11300, "admin", "admin");
result = Functions.Update(credentials, "LK.CUSTOMERS", "2" + ASCII_Chars.FS_chr + "CUSTOMER UPDATE 2þADDRESS 2þ444" + ASCII_Chars.FS_chr + "");
}
catch (Exception ex)
{
string error = ex.Message;
}
return result;
}
}
Imports Linkar
Imports Linkar.Functions.Direct.MV
Class Test
Public Function MyUpdate() As String
Dim result As String = ""
Try
Dim credentials As CredentialOptions = New CredentialOptions("127.0.0.1", "EPNAME", 11300, "admin", "admin")
result = Functions.Update(credentials, "LK.CUSTOMERS","2" + ASCII_Chars.FS_chr + "CUSTOMER UPDATE 2þADDRESS 2þ444" + ASCII_Chars.FS_chr + "")
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