Unable to save member
👉🏻 Hello, I am not able to save a source member. I cleared and then delete ILEDITOR library. I can edit and save same source member from SEU without any problem. It usually happens when I'm connected to AS400 via VPN and then the connection drops. I closed and reopened VS Code but nothing has changed.
Cheers Giovanni
⚠️ REMOVE THIS LINE AND ANY SENSITIVE INFORMATION BELOW! ⚠️
| Context | Version |
|---|---|
| Code for IBM i version | 2.7.0 |
| Visual Studio Code version | 1.87.0 |
| Operating System | darwin_arm64 |
Active extensions
Code Coverage for IBM i (code-coverage-ibmi): 0.1.7
Code Runner (code-runner): 0.12.1
Code for IBM i Walkthroughs (vscode-ibmi-walkthroughs): 0.4.0
Db2 for IBM i (vscode-db2i): 0.7.1
ESLint (vscode-eslint): 2.4.4
Emmet (emmet): 1.0.0
Git (git): 1.0.0
Git Base (git-base): 1.0.0
GitHub (github): 0.0.1
GitHub Authentication (github-authentication): 0.0.2
GitLens — Git supercharged (gitlens): 14.8.2
IBM i Notebooks (vscode-ibmi-notebooks): 0.0.6
JSON Language Features (json-language-features): 1.0.0
Jira and Bitbucket (Atlassian Labs) (atlascode): 3.0.10
Live Server (LiveServer): 5.7.9
Merge Conflict (merge-conflict): 1.0.0
Node Debug Auto-attach (debug-auto-launch): 1.0.0
Overtype (overtype): 0.5.0
RPGLE (vscode-rpgle): 0.26.2
Render Line Endings (render-crlf): 1.8.0
TypeScript and JavaScript Language Features (typescript-language-features): 1.0.0
YAML (vscode-yaml): 1.14.0
Remote system
| Setting | Value |
|---|---|
| IBM i OS | V7R4M0 |
| Tech Refresh | 8 |
| CCSID | 1144 |
| Default CCSID | 1144 |
| SQL | Enabled |
| Source dates | Enabled |
Enabled features
| /QOpenSys/pkgs/bin | /usr/bin | /QSYS.LIB | /QIBM/ProdData/IBMiDebugService/bin | |
|---|---|---|---|---|
| bash | attr | ILEDITOR.GETNEWLIBL | QZDFMDB2.PGM | startDebugService.sh |
| chsh | iconv | |||
| git | setccsid | |||
| grep | ||||
| ls | ||||
| md5sum | ||||
| sort | ||||
| stat | ||||
| tar | ||||
| tn5250 |
Shell env
BUILDLIB=BMS71L_OBJ
CURLIB=BMS71L_OBJ
HOME=/home/hm
HOST=as400
LIBLS=.......
LOGIN=hm
LOGNAME=hm
MAIL=/var/spool/mail/hm
OLDPWD=/home/hm
PATH=/QOpenSys/usr/bin:/usr/ccs/bin:/QOpenSys/usr/bin/X11:/usr/sbin:.:/usr/bin
PWD=/home/hm
SHELL=/QOpenSys/pkgs/bin/bash
SHLVL=1
SSH_CLIENT=10.212.134.132 61386 22
SSH_CONNECTION=10.212.134.132 61386 192.168.210.96 22
TZ=<CET>-1<CEST>,M3.5.0,M10.5.0
USER=hm
USERNAME=hm
WORKDIR=/home/hm
_=/QOpenSys/usr/bin/env
Variants
{
"american": "#@$",
"local": "��$"
}
Errors
[
{
"command": "/QOpenSys/usr/bin/qsh",
"code": 255,
"stderr": "CPF2111: La libreria ILEDITOR esiste gi�.",
"cwd": "/home/hm"
},
{
"command": "/QOpenSys/usr/bin/qsh",
"code": 255,
"stderr": "QSYSPRT *LIBL",
"cwd": "/home/hm"
}
]
Please share the contents of your Code for IBM i output channel after the error appears.
Hello, I attach it.
/home/hm: LC_ALL=EN_US.UTF-8 system "call QSYS/QZDFMDB2 PARM('-d' '-i' '-t')" CREATE OR REPLACE ALIAS ILEDITOR.BMS71L_SRC_QSRC_HSPECSFREE for "BMS71L_SRC"."QSRC"("HSPECSFREE") { "code": 0, "signal": null, "stdout": "DB2>\n ?>\nDB20000I THE SQL COMMAND COMPLETED SUCCESSFULLY.", "stderr": "" }
/home/hm: LC_ALL=EN_US.UTF-8 system "call QSYS/QZDFMDB2 PARM('-d' '-i' '-t')" SELECT LENGTH(srcdta) as LENGTH FROM ILEDITOR.BMS71L_SRC_QSRC_HSPECSFREE limit 1 { "code": 0, "signal": null, "stdout": "DB2>\n ?>\n\nLENGTH \n-----------\n 120\n\n 1 RECORD(S) SELECTED.", "stderr": "" }
/home/hm: LC_ALL=EN_US.UTF-8 system "call QSYS/QZDFMDB2 PARM('-d' '-i' '-t')" select srcdat, rtrim(translate(srcdta, x'2F', x'25')) as srcdta from ILEDITOR.BMS71L_SRC_QSRC_HSPECSFREE { "code": 0, "signal": null, "stdout": "DB2>\n ?>\n\nSRCDAT SRCDTA \n-------- ------------------------------------------------------------------------------------------------------------------------\n 0 **FREE \n 0 Ctl-Opt Option(*Srcstmt : *NodebugIO); \n 0 Ctl-Opt CopyRight('Victoria Computer Services LTD - 2020'); \n 0 Ctl-Opt DecEdit(*Jobrun); \n 0 Ctl-Opt DatEdit(*dmy.); \n 220422 Ctl-Opt AlwNull(*usrctl); \n\n 6 RECORD(S) SELECTED.", "stderr": "" }
/home/hm: LC_ALL=EN_US.UTF-8 system "call QSYS/QZDFMDB2 PARM('-d' '-i' '-t')" CREATE OR REPLACE ALIAS ILEDITOR.BMS71L_SRC_VSCODE_RPGLINT for "BMS71L_SRC"."VSCODE"("RPGLINT") { "code": 0, "signal": null, "stdout": "DB2>\n ?>\nDB20000I THE SQL COMMAND COMPLETED SUCCESSFULLY.", "stderr": "" }
/home/hm: LC_ALL=EN_US.UTF-8 system "call QSYS/QZDFMDB2 PARM('-d' '-i' '-t')" SELECT LENGTH(srcdta) as LENGTH FROM ILEDITOR.BMS71L_SRC_VSCODE_RPGLINT limit 1 { "code": 4, "signal": null, "stdout": "DB2>\n ?>\n\n **** CLI ERROR *****\n SQLSTATE: 42704\nNATIVE ERROR CODE: -204\nRPGLINT in *N di tipo *MEM non trovato.", "stderr": "" }
@HenryMiller initial glance at the log is that it looks ok. Are you still getting the error? I am not seeing an error for that file in the log you shared.
Hi Barry, yes, I'm getting same error now. I disconnected from IBM I , closed all Vs Code windows , reopened VS Code , and reconnected to IBM I I presume that issue is related to special characters and only when I edit same source code in SEU and/or VS CODE.
@HenryMiller When you get that error, please share your entire output and not just a snippet of it.
Hi Barry, I tried but I was not able to upload due to size limit.
I've created a very small source code and added special characters. I always noted that there 's an error at QSYSPRT *LIBL . error states "position 1 argument of TRANSLATE function not valid".
In this case it's the Italian accent on letter a. I cleared log, tried to save and copied all log data which is attached at the end of this comment.
/home/hm: /usr/bin/setccsid 1208 /tmp/vscodetemp-O_VsK84RVn
{
"code": 0,
"signal": null,
"stdout": "",
"stderr": ""
}
/home/hm: /QOpenSys/usr/bin/qsh
system "QSYS/RUNSQLSTM SRCSTMF('/tmp/vscodetemp-O_VsK84RVn') COMMIT(*NONE) NAMING(*SQL)"
{
"code": 255,
"signal": null,
"stdout": "5770SS1 V7R4M0 190621 Esecuzione istruzioni SQL VSCODETEMP 29/02/24 18:06:39 PAGE 1\nFile flusso origine......./tmp/vscodetemp-O_VsK84RVn\nRelease destinazione......V7R4M0\nCommit.................*NONE\nDenominazione.............*SQL\nLivello generazione.......10\nFormato data..............*JOB\nSeparatore data...........*JOB\nFormato ora...............*HMS\nSeparatore ora ...........*JOB\nMargine destro............80\nRaccolta predefinita......*NONE\nIndicatore IBM SQL........*NOFLAG\nIndicatore ANS............*NONE\nVirgola decimale..........*JOB\nSequenza di ordinamento...*JOB\nID lingua.................*JOB\nFile di stampa............*LIBL/QSYSPRT\nCCSID file origine........1208\nCCSID lavoro..............1144\nElaborazione istruzioni...*RUN\nPermessa la copia dati....*OPTIMIZE\nConsentito il blocco......*ALLREAD\nRegole SQL................*DB2\nOpzioni risultati decimali:\n Precisione massima.......31\n Scala massima...........31\n Scala divisione minima....0\nAccesso contemporaneo\n risoluzione..........*DFT\nSensibile a ora sistema.*YES\nMembro origine modificato in 29/02/24 18:06:39\n5770SS1 V7R4M0 190621 Esecuzione istruzioni SQL VSCODETEMP 29/02/24 18:06:39 PAGE 2\nRecord *...+... 1 ...+... 2 ...+... 3 ...+... 4 ...+... 5 ...+... 6 ...+... 7 ...+... 8 SEQNBR Ultima modifica\n 1 CREATE TABLE QTEMP.NEWMEMBER LIKE \"BMS71L_SRC\".\"QSRC\";\n 2 insert into QTEMP.NEWMEMBER values (1, 950115, translate(' A*===============\n 2 =========================================================*', x'25', x'2F')),(2,\n 2 170422, translate(' A*= $UNMIS - DS UNITA'' DI MISURA\n 2 =*', x'25', x'2F')),(3, 950115, translate(' A*============\n 2 ============================================================*', x'25', x'2F')),(\n 2 4, 910723, translate(' A*', x'25', x'2F')),(5, 950114, translate(' A\n 2 REF(DIZBAS)', x'25', x'2F')),(6, 950114, trans\n 2 late(' A*', x'25', x'2F')),(7, 170422, translate(' A R $UNMIS',\n 2 x'25', x'2F')),(8, 950501, translate(UX'002000200020002000200041002000200020002\n 2 00020002000200020002000200020002000200020002000200020002000200020002000200020002\n 2 00020002000200020002000200020002000200020002000200020002000540045005800540028002\n 2 70044005300200055006E00690074FFFD0020006400690020006D006900730075007200610027002\n 2 9', x'25', x'2F')),(9, 920511, translate(' A*', x'25', x'2F')),(10, 950501,\n 2 translate(' A TQNDIM R S REFFLD(NDIM)', x'25', x'2\n 2 F')),(11, 990413, translate(' A TQNDEC R S REFFLD(\n 2 NDEC)', x'25', x'2F')),(12, 950115, translate(' A*', x'25', x'2F'));\n 3 CALL QSYS2.QCMDEXC('CLRPFM FILE(BMS71L_SRC/QSRC) MBR($UNMIS)');\n 4 insert into ILEDITOR.BMS71L_SRC_QSRC_$UNMIS (select * from QTEMP.NEWMEMBER);\n * * * * * F I N E O R I G I N E * * * * *\n5770SS1 V7R4M0 190621 Esecuzione istruzioni SQL VSCODETEMP 29/02/24 18:06:39 PAGE 3\nRecord *...+... 1 ...+... 2 ...+... 3 ...+... 4 ...+... 5 ...+... 6 ...+... 7 ...+... 8 SEQNBR Ultima modifica\nID MES SEV RECORD TESTO\nSQL7950 0 1 Posizione 1 La tabella NEWMEMBER � stata creata in QTEMP.\nSQL0171 30 2 Posizione 1 Argomento 1 della funzione TRANSLATE non\n valido.\n Riepilogo messaggi\nTotale Informativo Avvertenza Errore Grave Terminale\n 2 1 0 0 1 0\nTrovati nell'origine 30 errori gravi\n * * * * * F I N E D E L L A L I S T A * * * * *",
"stderr": "QSYSPRT *LIBL"
}
@HenryMiller Thanks! That is a good find. Do you have the 'Show Set Colors' setting enabled in your VS Code settings?
Formatted
5770SS1 V7R4M0 190621 Esecuzione istruzioni SQL VSCODETEMP 29/02/24 18:06:39 PAGE 1
File flusso origine......./tmp/vscodetemp-O_VsK84RVn
Release destinazione......V7R4M0
Commit.................*NONE
Denominazione.............*SQL
Livello generazione.......10
Formato data..............*JOB
Separatore data...........*JOB
Formato ora...............*HMS
Separatore ora ...........*JOB
Margine destro............80
Raccolta predefinita......*NONE
Indicatore IBM SQL........*NOFLAG
Indicatore ANS............*NONE
Virgola decimale..........*JOB
Sequenza di ordinamento...*JOB
ID lingua.................*JOB
File di stampa............*LIBL/QSYSPRT
CCSID file origine........1208
CCSID lavoro..............1144
Elaborazione istruzioni...*RUN
Permessa la copia dati....*OPTIMIZE
Consentito il blocco......*ALLREAD
Regole SQL................*DB2
Opzioni risultati decimali:
Precisione massima.......31
Scala massima...........31
Scala divisione minima....0
Accesso contemporaneo
risoluzione..........*DFT
Sensibile a ora sistema.*YES
Membro origine modificato in 29/02/24 18:06:39
5770SS1 V7R4M0 190621 Esecuzione istruzioni SQL VSCODETEMP 29/02/24 18:06:39 PAGE 2
Record *...+... 1 ...+... 2 ...+... 3 ...+... 4 ...+... 5 ...+... 6 ...+... 7 ...+... 8 SEQNBR Ultima modifica
1 CREATE TABLE QTEMP.NEWMEMBER LIKE \"BMS71L_SRC\".\"QSRC\";
2 insert into QTEMP.NEWMEMBER values (1, 950115, translate(' A*===============
2 =========================================================*', x'25', x'2F')),(2,
2 170422, translate(' A*= $UNMIS - DS UNITA'' DI MISURA
2 =*', x'25', x'2F')),(3, 950115, translate(' A*============
2 ============================================================*', x'25', x'2F')),(
2 4, 910723, translate(' A*', x'25', x'2F')),(5, 950114, translate(' A
2 REF(DIZBAS)', x'25', x'2F')),(6, 950114, trans
2 late(' A*', x'25', x'2F')),(7, 170422, translate(' A R $UNMIS',
2 x'25', x'2F')),(8, 950501, translate(UX'002000200020002000200041002000200020002
2 00020002000200020002000200020002000200020002000200020002000200020002000200020002
2 00020002000200020002000200020002000200020002000200020002000540045005800540028002
2 70044005300200055006E00690074FFFD0020006400690020006D006900730075007200610027002
2 9', x'25', x'2F')),(9, 920511, translate(' A*', x'25', x'2F')),(10, 950501,
2 translate(' A TQNDIM R S REFFLD(NDIM)', x'25', x'2
2 F')),(11, 990413, translate(' A TQNDEC R S REFFLD(
2 NDEC)', x'25', x'2F')),(12, 950115, translate(' A*', x'25', x'2F'));
3 CALL QSYS2.QCMDEXC('CLRPFM FILE(BMS71L_SRC/QSRC) MBR($UNMIS)');
4 insert into ILEDITOR.BMS71L_SRC_QSRC_$UNMIS (select * from QTEMP.NEWMEMBER);
* * * * * F I N E O R I G I N E * * * * *
5770SS1 V7R4M0 190621 Esecuzione istruzioni SQL VSCODETEMP 29/02/24 18:06:39 PAGE 3
Record *...+... 1 ...+... 2 ...+... 3 ...+... 4 ...+... 5 ...+... 6 ...+... 7 ...+... 8 SEQNBR Ultima modifica
ID MES SEV RECORD TESTO
SQL7950 0 1 Posizione 1 La tabella NEWMEMBER � stata creata in QTEMP.
SQL0171 30 2 Posizione 1 Argomento 1 della funzione TRANSLATE non
valido.
Riepilogo messaggi
Totale Informativo Avvertenza Errore Grave Terminale
2 1 0 0 1 0
Trovati nell'origine 30 errori gravi
* * * * * F I N E D E L L A L I S T A * * * * *
Hi Barry, Yes, I do have "SHOW SEU COLORS" enabled.
@HenryMiller I would recommend turning it off and then attempting to save.