Replies: 5 comments
-
|
Hi, Someone can Help me? Thank you |
Beta Was this translation helpful? Give feedback.
-
|
Hi @pabloto,
Otherwise, having Code for i to support member locking (without having a way to bypass it) doesn't seem feasible, IMHO. |
Beta Was this translation helpful? Give feedback.
-
|
@sebjulliand
If this approach is workable, it puts the responsibility back on those shops who don't follow generally accepted best practices. IFS wouldn't need to be considered because such shops are unlikely to be using the IFS for source. |
Beta Was this translation helpful? Give feedback.
-
|
I agree with you @SJLennon, that would probably be the best way to offer the possibility to implement a lock mechanism. |
Beta Was this translation helpful? Give feedback.
-
|
I have been looking into this problem because we have the same requirement in our environment, but I do not see this as something specific to one shop only. The key point, from my perspective, is that this is really about IBM i job context, not about implementing one particular custom dependency or one specific lock policy inside the extension. For example, with ALCOBJ, if the allocation is created in one job and that job ends, the allocation is released. If a later action runs in a different job, that new job does not inherit control of the previous allocation or its context. So for workflows like this, running related commands in the same IBM i job is essential. That matters for lock-like scenarios, where the system must know who is allowed to edit and who is not, but it also applies more generally to any workflow where job-scoped context must be preserved across separate actions. That can include:
Because of that, I think the missing capability is not a built-in lock mechanism, but an optional way to run related ILE actions in the same persistent job while the Code for IBM i connection remains active. I have been prototyping exactly that: an optional persistent ILE job mode, scoped to the active connection. With that in place, multiple commands can run in the same IBM i job for the duration of the connection. This makes it possible to support custom shop-specific workflows such as:
This does not try to implement a lock policy directly in Code for IBM i, and it does not force any specific locking model on users. It only provides the execution model needed for IBM i workflows that depend on job continuity. I also had to account for save operations, because if edit/open runs in a persistent job but save runs in a different job, the workflow breaks. In the prototype, when a persistent action session is active, member save can also use that same persistent job. Another important point is that, once this capability exists in the extension, anyone who needs a specific locking workflow could build a companion extension on top of the Code for IBM i API. That companion extension could implement the kind of lock requested in this discussion, but it could also support many other job-context-based workflows. To me, that is a strong advantage: people could extend the behavior they need without forking this project, while staying aligned with the main Code for IBM i codebase and contributing to a shared path of growth and development in VS Code. So from my point of view, this is not about adding a built-in lock manager. It is about providing an optional same-job execution capability that can support locking workflows, but also any other workflow that depends on job-scoped state or in-memory context. If this direction makes sense, I can prepare a PR. |
Beta Was this translation helpful? Give feedback.
Uh oh!
There was an error while loading. Please reload this page.
-
Hi,
I need a suggestion, some colleagues still using SEU 😭, I want to give their VSCode.
We have a validity check program in STRSEU command. This program simple access to a table and write a row with the developer who are editing that source. If another developer try to open that source it receive a message that prevent open it.
Could I simulate this with vscode? Is there the possibility to simulate a validity check program with a codeforI api?
Many thanks
Active extensions
Remote system
Enabled features
Shell env
Variants
{ "american": "#@$", "local": "£§$", "qsysNameRegex": {} }Beta Was this translation helpful? Give feedback.
All reactions