INSERT

Inserisci caratteri

INSERT inserisce la stringa IN2 nella stringa IN1 a partire da dopo la posizione del carattere P, dove 0 denota l'inizio della stringa, 1 la posizione dopo il primo carattere della stringa, ecc. Il risultato viene scritto nella variabile di uscita.

Parametri

Ingresso

IN1 (STRING)

stringa di ingresso

IN2 (STRING)

stringa da inserire nella stringa di ingresso

P (INT)

posizione dopo la quale la stringa IN2 viene inserita nella stringa di ingresso IN1, dove 0 denota l'inizio della stringa, 1 la posizione dopo il primo carattere della stringa

Uscita

Unnamed output (STRING)

stringa risultato

Note

  • Se questa istruzione è utilizzata con stringhe UTF-8, fare riferimento alle note relative alle stringhe UTF-8 sotto il tipo di dati STRING.

  • Se la lunghezza delle stringhe supera la lunghezza definita per le variabili di ingresso (IN1 e IN2) nel campo di dichiarazione “Tipo”, si verifica un errore (vedere sys_bIsCarry per la gestione dell'errore).

Flag di errore

sys_bIsOperationErrorHold (passa a TRUE e resta TRUE)

se una stringa applicata in ingresso o in uscita è una stringa non valida

sys_bIsOperationErrorNonHold (passa a TRUE per una scansione)

se una stringa applicata in ingresso o in uscita è una stringa non valida

Esempio

Intestazione del POU

Tutte le variabili di ingresso e uscita utilizzate per programmare questa funzione sono state dichiarate nell'intestazione del POU. La stessa intestazione del POU è utilizzata per tutti i linguaggi di programmazione.

	VAR
		input_string1: STRING[32]:='ideas life';
		input_string2: STRING[32]:='for';
		position: INT:=6;
		output_string: STRING[32]:='';
	END_VAR

Corpo del POU

In questo esempio sono state dichiarate le variabili di ingresso (input_string1, input_string2 e position). Tuttavia, potete inserire i valori direttamente nei pin di contatto di ingresso della funzione. I valori STRING devono essere inseriti tra virgolette, sia nell'intestazione del POU sia nei pin di contatto. input_string2 ('for ') viene inserito in input_string1 ('Ideas life') dopo la posizione del carattere 6. Il risultato ('Ideas for life') viene restituito in output_value. Nell'esempio in LD, l'icona (Monitoraggio) è stata attivata durante la modalità online per permettervi di visualizzare immediatamente i risultati.

Corpo LD

BODY
    WORKSPACE
        NETWORK_LIST_TYPE := NWTYPELD ;
        ACTIVE_NETWORK := 0 ;
    END_WORKSPACE
    NET_WORK
        NETWORK_TYPE := NWTYPELD ;
        NETWORK_LABEL :=  ;
        NETWORK_TITLE :=  ;
        NETWORK_HEIGHT := 5 ;
        NETWORK_BODY
B(B_F,INSERT!,Instance,9,0,14,5,,?DIN1?DIN2?DP?C);
B(B_VARIN,,input_string1,7,1,9,3,);
B(B_VARIN,,input_string2,7,2,9,4,);
B(B_VARIN,,position,7,3,9,5,);
B(B_VAROUT,,output_string,14,1,16,3,);
L(1,0,1,5);
        END_NETWORK_BODY
    END_NET_WORK
END_BODY

Corpo ST

output_value:=INSERT(IN1:=input_string1, IN2:=input_string2, P:=6);

Corpo IL

L'ultima revisione: 2022-04-19Feedback su questa paginaPanasonic hotline