• Aktuell gibt es hier im Forum Spam von langjährigen Usern.

    Vermutlich wurden die Zugangsdaten dieser User irgendwo geleakt.

    Die Beiträge enthalten alle einen einen Link zu Schadsoftware. Bisher lassen sich diese Beiträge recht einfch erkennen. Sie sind in englisch und haben nichts mit dem Thema zu tun. Seid hier bitte sehr vorsichtig.

    1. Nicht auf solche Links klicken
    2. Bitte solche Dinge sofort melden (Button unten am Beitrag)
    3. Wenn jemand Private Nachrichten mit solchen Inhalten bekommt, bitte auch melden!

    Die betroffenn User haben wir gesperrt, Wenn du betroffen bist, dann melde dich gerne bei uns über das Kontaktformular. Wir setzen dann dein Passwort zurück und du kannst dir ein neues vergeben.

    Danke für eure Mithilfe!
    Markus

WinCC --> User Archiv --> C-Script --> ua-Befehl --> für markierte Zeile auslesen

CanYouHelpMe

Active member
Beiträge
30
Reaktionspunkte
1
Zuviel Werbung?
-> Hier kostenlos registrieren
WinCC --> User Archiv --> C-Script --> ua-Befehl --> für markierte Zeile auslesen

Hallo Leute,

mit welchem ua-Befehl bekomme ich raus welche Zeile markiert ist? Ich möchte nämlich die Daten der Zeile welche markiert ist auslesen. Bei dem Beispiel welches ich unter der Hilfe gefunden habe, wählt das Script automatisch den ersten Datensatz aus. Doch das ist nicht immer erwünscht.
Hier ist das Script aus der Hilfe:



////////////////////////////////////////////////////////////////////////////////////////////////////////
#include "apdefap.h"
void OnClick(char* lpszPictureName, char* lpszObjectName, char* lpszPropertyName)
{
//void UAReadFromArchive()

{

UAHCONNECT hConnect = 0;

UAHARCHIVE hArchive = 0;

LONG IndexArchive;

LONG FieldLength;

LONG FieldType;

LONG NumberOfFields;

LONG Index;

long IntValue;

double DoubleValue;

char ArchivName[255], StringField[255];

SYSTEMTIME SysDate;


//******* Connect to Component User Archives ****************************

if (uaConnect( &hConnect ) == FALSE )

{

printf("uaConnect error: %d\r\n", uaGetLastError() );

return;

}

if (hConnect == NULL)

{

printf("Handle UAHCONNECT equals 0\r\n" );

return;

}


//******* Connect to Archive via Archive Name ****************************

if (uaQueryArchiveByName( hConnect, "Batch_Lieferanten", &hArchive ) == FALSE )

{

printf("uaQueryArchive Error: %d\r\n" , uaGetLastError() );

goto finish;

}



//******* Opens Archive ******************************************************

if ( uaArchiveOpen( hArchive ) == FALSE )

{

printf("uaArchive Open Error\r\n" );

goto finish;

}


//******* Move to first record set ****************************************************

if (uaArchiveMoveFirst(hArchive) == FALSE )

{

printf("uaArchiveMoveFirst Error = %u\r\n" );

goto finish;

}

//******* Get Number of Fields **********************************************

NumberOfFields = uaArchiveGetFields( hArchive );

printf("Number of Fields = %u\r\n", NumberOfFields );


//******* Read and show Data Fields ****************************************

for ( Index = 1; Index < NumberOfFields; Index++ )

{

printf("Data of Field %u: \r\n", Index );

FieldType = uaArchiveGetFieldType( hArchive, Index );

switch ( FieldType )

{

case UA_FIELDTYPE_INTEGER :

printf("Field Type = Integer\r\n");

if (uaArchiveGetFieldValueLong ( hArchive, Index, &IntValue ) == TRUE )

printf("Field Value = %u\r\n", IntValue );

else

printf("Error callinguaArchiveGetFieldValueLong: %d\r\n", uaGetLastError() );


break;


case UA_FIELDTYPE_DOUBLE :

printf("Field Type = Double\r\n");

if (uaArchiveGetFieldValueDouble (

hArchive, Index, &DoubleValue ) == TRUE )
 
Zurück
Oben