Article Alexey Maslov · May 4, 2018 1m read

In old Caché versions it was possible to create a new role based on predefined %Developer by copying it and adding some resources as needed. It was true at least from 2010.1 to 2015.1.

After upgrade from 2015.1.4 to 2017.2.1 it turned that it's only partially true now. User with a "New-Developer" role can enter Studio and open existing cls/mac/etc for editing and everything is OK unless he tries to create something new (Ctrl-N), than he gets a pop-up with %msg: <User xxx does not have enough privilege to execute stored procedure %CSP.StudioTemplateMgr_Templates>

The solution found was simple:

3
0 563
Question Julian Matthews · May 31, 2018

I was wondering if there is a way of adding additional headings under the settings tab for services etc?

I'm aware its possible to add items under the additional settings heading, but being able to split these out into separate headings would look a lot nicer.

2
0 292
Question Tirthankar Bachhar · Mar 8, 2018

While trying to start the instance INSTANCE001, getting below error, where cache.shid file doesnot contains anything.

This is in a Linux server.

Any help is appreciated.

$ ccontrol start INSTANCE001INSTANCE001 startup failed: Instance is down although there is process attached to shared memoryYou can get the shared memory ID in cache.shid filethen run 'ipcs -m -a' to see the number of processes still attached.
7
0 1249
Question Paul Goggin · Nov 1, 2016

Is there any easy way to create a WebSocket to Telnet proxy within the Cache environment?

I would like to use a html5 telnet emulator to connect to cache, but need to create a proxy,

Is this a simple task?

8
0 1693
Question Larry Overkamp · May 30, 2018

Release 2017.2.

I have created a class that extends Ens.BusinessOperation, and in my class I have defined a custom property. How can I change the property's heading that is displayed on the Management Portal Settings tab?

3
0 352
Question Laura Blázquez García · May 23, 2018

We have received a dead job alert. We want to know when occurs this, I mean, Ensemble kills a job automatically if it is consuming a lot of memory or CPU? Or is the operating system who kills the job and Ensembe detects it and alerts?

1
0 535
Question p rd · May 29, 2018

I want to generate one of the following xml data, but after I generate only de="", after I need to generate is de="DEX71.41.009.01"

//// result:
<OPTREGISTER>
      <THBZ de="DEX71.41.007.01" display=""></THBZ>
      <GHFS de="DEX71.41.008.01" display=""></GHFS>
      <GHF de="DEX71.41.009.01"></GHF>
      <ZLF de="DEX71.41.009.01"></ZLF>
      <QTF de="DEX71.41.009.01"></QTF>
      <WDBZ de="DEX71.41.010.01" display=""></WDBZ>
      <GHKSDM de="DE08.10.025.00" display=""></GHKSDM>
</OPTREGISTER>

The classes I use are as follows:

////// ------ Test.Common.PropertyParameters cls
Class

2
0 406
Question Laura Blázquez García · Feb 8, 2017

Hi,

We want to monitor an Ensemble Production and send custom email alerts in function of some Rules. For example, if we normally receive 1 message per second, if suddenly we receive 5 or more messages per second, we want to send an email alert. And if tomorrow we don't want to check this again, we want to disable it through Ensemble Business Rules.

4
0 1206
Question Scott Roth · May 29, 2018

I have a vendor that is sending me an Abbreviation in FT1:16.4.2 that I need to look up against a table to find the correct ID for.

FT1|1|||20180523161501|20180523161503|CG|1906551^Lipid Profile|||1||||||^^^ LAB&06CL|||Z00.00||00410^Knerr^Joel||721410||30100001^Lipid Profile|

But in my Business Process when I refer to request.GetValueAt("FT1:16.4.2") its not recognizing that this field contains information. Is my syntax wrong?

5
0 952
Question Paster-Bachar Gadi · May 23, 2018

Hi All

I'm looking for the a simple-quick-easy solution to monitor a SQL table thought Ensemble.

I have a process that update a DataBase ,a scheduled task that runs every night  (Not Ensemble)

In the end it updates a table (replica_status) with a new recored with two fileds:  Id, DateTime

I looked around the community but didn't find an answerd case.

I'm thinking on a Task that will run a sql outboud adapter BO that checks that table and send a alert if no new record was created yesterday

is this the right approach or is there's a better solution?

Thanks Gadi

5
0 531
Question Thiago Zenaro · May 25, 2018

Hi everyone

I'm coding a script in order to validade an installation package following the steps:

- Create environment { }
Try{
    - Import classes
    // Do some stuffs
    - Compile Classes
}Catch (ex){
    // oops ...
}
- Destroy environment { }

In some specific cases I will need to terminate the current process and start a new one with some new parameters.
With any code inside my try catch block, whenever I terminate the process I receive a RESJOB and it works perfectly.
When my job is running a compilation ($SYSTEM.OBJ.Compile(.classes)) and receive a RESJOB, it does not catch the exception.

7
0 702
Question Minsu Kim · May 25, 2018

Hello glabal masters,

I am trying to develop WAS using Cache and Spring Framework.

The ON DUPLICATE KEY UPDATE is not working.

Source : 

INSERT INTO 
            ocsGUMCHECDINFO (CODE,DODATE,NAME,DAY,PURPOSE,REQUIREMENT,BEFORENOTE,AFTERNOTE,CNT,REPORT,CONSENT,CONTACT)
        VALUES
            (#{code},#{doDate},#{name},#{day},#{purpose},#{requirement},#{beforeNote},#{afterNote},#{cnt},#{report},#{consent},#{contact})
        ON DUPLICATE KEY UPDATE

3
0 481
Question JAQUELINE KRIEGER · May 7, 2018

Hi everybody,

 I need to load data from excel to a class in cache, but this class has foreign key and property like AS ..... (other class). This class represent an item product that belongs to a line, the line blelongs a group and the group belongs a Category. 

Example:  

Property bdGrupo As Innova.CL.Core.BD.Operacion.Producto.Grupo;Property bdLineaPR As Innova.CL.Core.BD.Operacion.Producto.Linea [ Cardinality = parent, Inverse = bdProductoCH ];Property bdCategoriaProducto As Innova.CL.Core.BD.Operacion.Producto.Mantenedor.CategoriaProducto;Property Portafolio As %Boolean [ InitialEx
5
0 1993
Question Stefan Blank · May 18, 2018

Hi,
I created a REST service that works well if called via VPN,  for example the url http://192.168.10.60:57772/fm/status returns a JSON string as expected.
If I replace the ip 192.168.10.60 with the ip used for our public website nothing happens. If I remove the port :57772 the browser returns a 404 error page.
Do I have to use a different port or is this caused by the settings of our web server? (We are using Apache Web Server: Apache Cache_Server_Pages-Apache_Module/2016.1.0.656.0-1601.1554d)  


Thanks in advance!

4
0 508
Question Laura Cavanaugh · Mar 16, 2017

Hello; we have users on the system with cache logins.  They have access to a specific namespace, and no access to %SYS of course.  I'd like to give each user the ability to change his own password from within our application, using Security.User.PasswordExternal.  This only exists in the %SYS namespace, and the average user can't get to it.  

Should I give the users access to this column in this table (column Password, table Security.Users)?  What about access to the namespace?  Is this possible? Has anyone done this before?

Thanks,

Laura

10
0 1357
Question Nezla · May 18, 2018

Hi Guys,

I'm upgrading Cache 2008 to 2014, and for two clients so far all good, but with this third one and while trying to mount the main database that includes the data, I'm getting error #36 "database is not mountable"!?

but cache instances the old 2008 and the new 2014 at installed the same way (8 bit) and Cache.dat is (archive) NOT read only so I don't know what could be the problem?

Thanks

9
0 1617
Question Justin Wilson · May 22, 2018

We upgraded from 2017.1 to 2017.2 today and noticed that when shutting down we must do it as an administrator.  Attempting to shut down as a non-admin result in a failure to shut down message.  We are curious if there was an issue with our upgrade or if there is a change that requires an administrator to shut down Cache in 2017.2.

edit:

Operating System is Windows Server 2012 R2.  We run Cache in a cluster using Windows Failover Cluster where we swing the drive from one machine to another when failing.  

5
0 397
Question Paul Riker · Apr 24, 2018

I want to create an interface specific purge job. Please let me know if there are any holes in my approach. I realize that an interface that went from HospitalAService to HospitalARouter to PracticeBOperation would require two separate executes in my example below, but I want that granularity as there are some intermediate steps in our workflows that we don't need to retain messages for.

  1. Create a custom scheduled task that extends Ens.MessageHeader
  2. Overwrite the Purge function select statements
    1. Integrity
      1. Old
        • DECLARE C1 CURSOR FOR
           Select TOP 100000000 ID,MessageBodyId,MessageBodyClassName Into
2
0 982
Question yoav Sivan · May 21, 2018

I have a very large logistics software running Chache.

I need to build an external application ( Web & Mobile)  . I was thinking of using Angular. Does anyone have experience with this infrastructure ? What would be the best way to extract the data ?

4
0 1036
Question Michael Gosselin · May 22, 2018

We have this challenge at our site. When we first designed it many years ago, we decided that the best way to store files was with a unique identifier, which matched one of the fields in the corresponding record. For example, if the unique identifier was a nine-digit field (such as a SSN), we'd save a file as nnnnnnnnn.ext, where nnnnnnnnn is the nine-digit number, and ext is the file extension. If we needed a change to the file, we'd file as nnnnnnnnn_hdate.ext, where hdate is the horolog date. And for 18 years, this was just fine.

However, in year 19, we discovered one of the growing pains

2
0 394
Question Thembelani Mlalazi · May 18, 2018

I have a csv record mapper that reads in a batch and my batch has a header and trailer that changes all the time but it is of fixed length so I override the Get Batch Header method from the simplebatch class to something like below but my problem is when the batch is read in It still tries to bring in another empty batch like the picture below any reason why that is here is my code.The red code is the changes made. After several  trace logs it is being called twice first time with the batch [1] and[5]is the second call how can I stop that from happening

/// Get the Batch Header from an
5
1 540
Question Eduard Lebedyuk · May 22, 2018

The code I'm researching loosely follows this flow:

  1. My first callback
  2. Black box
  3. My second callback

I can modify 1 and 3 no problem but modifying 2 is difficult.

However I think that step 2 has some optimization problems, namely:

  • instantiates lots of objects
  • throws/catches lots of exceptions (not logged)

Is there a way to count these two metrics?

3
0 318