delphix
22-02-02, 14:58
Hallo,
wir haben ein Problem beim beschreiben von ICF-dateien.
Ein vorhandenes RPG Programm sendet schon Daten an die ICF-datei.Die Daten sollen aber über das C-Programm verschickt werden
Bisher versuchen wir die Datei über >_Ropen<
zu öffnen leider resultiert daraus ein unbehebbarer E/A-Fehler.
Im RPG wird die Datei implizit geöffnet und im C muß sie explizit geöffnet werden.
Welcher C-Befehl entspricht dem impliziten Open im RPG?
Vielleicht hat ja jemand von euch schon ein Beispiel welches er uns zur Verfügung stellt!
Das Beispiel im IBM Redbook hat uns leider nicht wirklich weiter geholfen!
http://publib.boulder.ibm.com/pubs/html/as400/online/v4r4ger.htm
Danke schonmal
C-Source:
#include "stdio.h"
#include "stdlib.h"
#include "string.h"
#include "recio.h"
#define MAX_STRING_LEN 255
/* Prototypen */
void GetFileName(char* szFileName, int argc, char* argv[]);
int main(int argc, char* argv[])
{
/* Variablen definieren */
char szFileName[MAX_STRING_LEN];
/* FILE* pICF; */
_RFILE* pICF;
GetFileName(szFileName, argc, argv);
printf("Verarbeitung (Datei %s) starten...\n", szFileName);
pICF = _Ropen(szFileName, "ar+ indicators=y riofb=y");
/* pICF = fopen(szFileName, "a+"); */
if ( pICF == NULL )
{
perror("fopen");
exit(9);
}
printf("Datei ge”ffnet, weiter mit bel. Zeichen...\n");
getchar();
/* fprintf(pICF, "TESTSTRING\n"); */
/* fclose(pICF); */
_Rclose(pICF);
printf("Verarbeitung beendet.\n");
/* alles paletti */
exit(0);
}
/* Prozedur GetFileName */
void GetFileName(char* szFileName, int argc, char* argv[])
{
if ( argc > 1 )
{
strcpy(szFileName, argv[1]);
}
else
{
strcpy(szFileName, "devub/data2");
}
} /* GetFileName */
[Dieser Beitrag wurde von delphix am 22. Februar 2002 editiert.]
[Dieser Beitrag wurde von delphix am 22. Februar 2002 editiert.]
[Dieser Beitrag wurde von delphix am 22. Februar 2002 editiert.]
wir haben ein Problem beim beschreiben von ICF-dateien.
Ein vorhandenes RPG Programm sendet schon Daten an die ICF-datei.Die Daten sollen aber über das C-Programm verschickt werden
Bisher versuchen wir die Datei über >_Ropen<
zu öffnen leider resultiert daraus ein unbehebbarer E/A-Fehler.
Im RPG wird die Datei implizit geöffnet und im C muß sie explizit geöffnet werden.
Welcher C-Befehl entspricht dem impliziten Open im RPG?
Vielleicht hat ja jemand von euch schon ein Beispiel welches er uns zur Verfügung stellt!
Das Beispiel im IBM Redbook hat uns leider nicht wirklich weiter geholfen!
http://publib.boulder.ibm.com/pubs/html/as400/online/v4r4ger.htm
Danke schonmal
C-Source:
#include "stdio.h"
#include "stdlib.h"
#include "string.h"
#include "recio.h"
#define MAX_STRING_LEN 255
/* Prototypen */
void GetFileName(char* szFileName, int argc, char* argv[]);
int main(int argc, char* argv[])
{
/* Variablen definieren */
char szFileName[MAX_STRING_LEN];
/* FILE* pICF; */
_RFILE* pICF;
GetFileName(szFileName, argc, argv);
printf("Verarbeitung (Datei %s) starten...\n", szFileName);
pICF = _Ropen(szFileName, "ar+ indicators=y riofb=y");
/* pICF = fopen(szFileName, "a+"); */
if ( pICF == NULL )
{
perror("fopen");
exit(9);
}
printf("Datei ge”ffnet, weiter mit bel. Zeichen...\n");
getchar();
/* fprintf(pICF, "TESTSTRING\n"); */
/* fclose(pICF); */
_Rclose(pICF);
printf("Verarbeitung beendet.\n");
/* alles paletti */
exit(0);
}
/* Prozedur GetFileName */
void GetFileName(char* szFileName, int argc, char* argv[])
{
if ( argc > 1 )
{
strcpy(szFileName, argv[1]);
}
else
{
strcpy(szFileName, "devub/data2");
}
} /* GetFileName */
[Dieser Beitrag wurde von delphix am 22. Februar 2002 editiert.]
[Dieser Beitrag wurde von delphix am 22. Februar 2002 editiert.]
[Dieser Beitrag wurde von delphix am 22. Februar 2002 editiert.]