Re: split a field and loop on each piece
t;> > 'mouse', 'kathy' >> > >> > So, Jane, Dan, Greg, Kathy, and Bob all need Floating licenses to be >> > able to >> > change the status of the request (approval). They are also added to a >> > specific Approver group that has 5 floating licenses allocated to it. >> > >> > Eventually, Bob might be removed from the "monitor" approver list, so he >> > wouldn't really need a Floating license anymore. In fact, leaving Bob >> > with >> > a Floating license would be wasteful, since it seems that Floating >> > licenses >> > are consumed even when doing tasks that only "require" a Read license. >> > >> > It would be nice if I could just give everyone Floating license and not >> > worry about this... >> > >> > Thanks again! >> > >> > Brien >> > >> > On Tue, Sep 23, 2008 at 12:12 PM, Thad K Esser <[EMAIL PROTECTED]> >> > wrote: >> >> >> >> ** >> >> I'm just catching up on my arslist, and might have missed a nuance of >> >> your >> >> goal, but would a computed group help you in any way that would prevent >> >> you >> >> from having to monkey with the user data? >> >> >> >> --- >> >> Having said that, and with full awareness of the issues brought up by >> >> Axton, you can eliminate issues with a preceding semi-colon by adding >> >> one in >> >> as part of the replace: >> >> Assuming: >> >> Group List = "511;507;508;501;518;521;55598;" >> >> xtmpchar2 = "55598" >> >> >> >> Then: >> >> New List = REPLACE(";" + $Group List$ + ";", ";" + $xtmpchar2$ + ";", >> >> ";") >> >> >> >> You could end up with a Group List that starts with a semi-colon, pull >> >> it >> >> out with a RIGHT() function if you need to. >> >> Also, depending on details, you could end up with a double semi-colon >> >> in >> >> your list. After any looping is done, you can pull the 2nd one out >> >> with an >> >> additional: >> >> REPLACE($Group List$, ";;", ";") >> >> --- >> >> >> >> I am curious, what is the nature of this group that only needs members >> >> for >> >> a day? >> >> >> >> Thad Esser >> >> Remedy Developer >> >> "Argue for your limitations, and sure enough, they're yours."-- Richard >> >> Bach >> >> >> >> >> >> Brien Dieterle <[EMAIL PROTECTED]> >> >> Sent by: "Action Request System discussion list(ARSList)" >> >> >> >> >> >> 09/23/2008 11:17 AM >> >> >> >> Please respond to >> >> arslist@ARSLIST.ORG >> >> To >> >> arslist@ARSLIST.ORG >> >> cc >> >> Subject >> >> Re: split a field and loop on each piece >> >> >> >> >> >> >> >> >> >> ** >> >> Right, I am only flipping read-only to floating, and back again... >> >> Also, >> >> the database looks like: >> >> >> >> 511;507;508;501;518;521;55598; >> >> >> >> So, I think I can do a >> >> REPLACE($Group List$,"55598;","") >> >> >> >> and it should be all good after all. Interestingly, Remedy Admin won't >> >> even let you save an action that threatens to corrupt the format of >> >> this >> >> field (for instance, I tried saving it with replace: ";55598" instead >> >> of >> >> "55598;" and it actually said "Error with one of the field/assignments >> >> in >> >> the set filter/active link/escalation definition : User (ARERR 168)." >> >> >> >> I thought I was good to go there, and I just realized that >> >> >> >> REPLACE($Group List$, "55598;", "") or even using the group's >> >> text-name >> >> >> >> upon saving, gets converted to: >> >> >> >> REPLACE($Group List$, " 55598;", "") >> >> >> >> Notice the extra space before the group id? Any other variation seems >> &g
Re: split a field and loop on each piece
Forgot to mention we don't have ITSM, just AR System w/o Approval Server installed. Brien On Wed, Sep 24, 2008 at 6:54 AM, Axton <[EMAIL PROTECTED]> wrote: > Is the approval server bound to a custom form or a form in the ITSM > suite? If bound to one of the ITSM forms, there are bypasses in the > licensing enforcement that allow people to approve with a read > license. If bound to a custom form, you can in essence bypass the > licensing requirements by using filters to update the underlying > records, simply put some filters on a display on form and have the > user with the read license push to that display only form using an > active link and then pick up the remainder of the updates using > filters. I worked with BMC support at one point in the past and > verified that this was not a violation of our licensing agreement if > used in this way for this specific purpose. > > You should consider describing the problem you are trying to address > from the start as there may be approaches you have not considered that > people can share. > > Axton Grams > > On Tue, Sep 23, 2008 at 4:01 PM, Brien Dieterle > <[EMAIL PROTECTED]> wrote: > > ** > > Thanks for the warnings, list-- Since it seems so problematic, I am not > > going to bother with the remove-from-group or downgrading of License. > So, > > my process will basically "upgrade" a user account by appending a group > to > > their Group List, and changing their License Type from Read to Floating. > > The list is fairly static so it shouldn't be a big deal to clean it up > once > > in a while. > > > > What is the purpose of all of this, you might wonder? It is so a typical > > end-user (Read License) can make a request for a certain something that > is > > approved by a certain person. Here is a generalized example: > > > > If Bob requests a computer, Jane or Dan would have to approve the > request. > > So my reference table has: > > > > 'computer', 'jane;dan' > > 'monitor', 'greg;bob' > > 'mouse', 'kathy' > > > > So, Jane, Dan, Greg, Kathy, and Bob all need Floating licenses to be able > to > > change the status of the request (approval). They are also added to a > > specific Approver group that has 5 floating licenses allocated to it. > > > > Eventually, Bob might be removed from the "monitor" approver list, so he > > wouldn't really need a Floating license anymore. In fact, leaving Bob > with > > a Floating license would be wasteful, since it seems that Floating > licenses > > are consumed even when doing tasks that only "require" a Read license. > > > > It would be nice if I could just give everyone Floating license and not > > worry about this... > > > > Thanks again! > > > > Brien > > > > On Tue, Sep 23, 2008 at 12:12 PM, Thad K Esser <[EMAIL PROTECTED]> > wrote: > >> > >> ** > >> I'm just catching up on my arslist, and might have missed a nuance of > your > >> goal, but would a computed group help you in any way that would prevent > you > >> from having to monkey with the user data? > >> > >> --- > >> Having said that, and with full awareness of the issues brought up by > >> Axton, you can eliminate issues with a preceding semi-colon by adding > one in > >> as part of the replace: > >> Assuming: > >> Group List = "511;507;508;501;518;521;55598;" > >> xtmpchar2 = "55598" > >> > >> Then: > >> New List = REPLACE(";" + $Group List$ + ";", ";" + $xtmpchar2$ + ";", > >> ";") > >> > >> You could end up with a Group List that starts with a semi-colon, pull > it > >> out with a RIGHT() function if you need to. > >> Also, depending on details, you could end up with a double semi-colon in > >> your list. After any looping is done, you can pull the 2nd one out with > an > >> additional: > >> REPLACE($Group List$, ";;", ";") > >> --- > >> > >> I am curious, what is the nature of this group that only needs members > for > >> a day? > >> > >> Thad Esser > >> Remedy Developer > >> "Argue for your limitations, and sure enough, they're yours."-- Richard > >> Bach > >> > >> > >> Brien Dieterle <[EMAIL PROTECTED]> > >> Sent by: "Action Request System discussion list(ARSList
Re: split a field and loop on each piece
ng up on my arslist, and might have missed a nuance of > your > >> goal, but would a computed group help you in any way that would prevent > you > >> from having to monkey with the user data? > >> > >> --- > >> Having said that, and with full awareness of the issues brought up by > >> Axton, you can eliminate issues with a preceding semi-colon by adding > one in > >> as part of the replace: > >> Assuming: > >> Group List = "511;507;508;501;518;521;55598;" > >> xtmpchar2 = "55598" > >> > >> Then: > >> New List = REPLACE(";" + $Group List$ + ";", ";" + $xtmpchar2$ + ";", > >> ";") > >> > >> You could end up with a Group List that starts with a semi-colon, pull > it > >> out with a RIGHT() function if you need to. > >> Also, depending on details, you could end up with a double semi-colon in > >> your list. After any looping is done, you can pull the 2nd one out with > an > >> additional: > >> REPLACE($Group List$, ";;", ";") > >> --- > >> > >> I am curious, what is the nature of this group that only needs members > for > >> a day? > >> > >> Thad Esser > >> Remedy Developer > >> "Argue for your limitations, and sure enough, they're yours."-- Richard > >> Bach > >> > >> > >> Brien Dieterle <[EMAIL PROTECTED]> > >> Sent by: "Action Request System discussion list(ARSList)" > >> > >> > >> 09/23/2008 11:17 AM > >> > >> Please respond to > >> arslist@ARSLIST.ORG > >> To > >> arslist@ARSLIST.ORG > >> cc > >> Subject > >> Re: split a field and loop on each piece > >> > >> > >> > >> > >> ** > >> Right, I am only flipping read-only to floating, and back again... Also, > >> the database looks like: > >> > >> 511;507;508;501;518;521;55598; > >> > >> So, I think I can do a > >> REPLACE($Group List$,"55598;","") > >> > >> and it should be all good after all. Interestingly, Remedy Admin won't > >> even let you save an action that threatens to corrupt the format of this > >> field (for instance, I tried saving it with replace: ";55598" instead of > >> "55598;" and it actually said "Error with one of the field/assignments > in > >> the set filter/active link/escalation definition : User (ARERR 168)." > >> > >> I thought I was good to go there, and I just realized that > >> > >> REPLACE($Group List$, "55598;", "") or even using the group's > text-name > >> > >> upon saving, gets converted to: > >> > >> REPLACE($Group List$, " 55598;", "") > >> > >> Notice the extra space before the group id? Any other variation seems > to > >> trigger the error message referenced above. Weird!! > >> > >> Other than that, I can successfuly add a user to a group, and change > their > >> license from Read to Floating, and back again. I just can't remove them > >> from the group. Presumably, I can copy the Group List to a tmp field, > do > >> the REPLACE() there, and then put that back in the user group field to > get > >> around Remedy Admin tool being too "smart"... > >> > >> Thanks for the suggestions!! > >> > >> > >> > >> On Tue, Sep 23, 2008 at 10:17 AM, Opela, Gary L CTR USAF AFMC 72 > CS/SCBAH > >> <[EMAIL PROTECTED]> wrote: > >> I'm not sure of the implications with a floating license of > >> adding/removing a license, since they are not tied to a user. > >> > >> However, with a Fixed License (which is not what you stated you are > >> using), you can only reassign it 3 times per week before it is locked > >> for the rest of the seven days. > >> > >> Gary > >> > >> -Original Message- > >> From: Action Request System discussion list(ARSList) > >> [mailto:[EMAIL PROTECTED] On Behalf Of Brien Dieterle > >> Sent: Tuesday, September 23, 2008 11:26 AM > >> To: arslist@ARSLIST.ORG > >> Subject: Re: split a field and loop on each piece > >> > >> ** > >> Haha, thanks for the tip-- I was planning to use "" in the r
Re: split a field and loop on each piece
Is the approval server bound to a custom form or a form in the ITSM suite? If bound to one of the ITSM forms, there are bypasses in the licensing enforcement that allow people to approve with a read license. If bound to a custom form, you can in essence bypass the licensing requirements by using filters to update the underlying records, simply put some filters on a display on form and have the user with the read license push to that display only form using an active link and then pick up the remainder of the updates using filters. I worked with BMC support at one point in the past and verified that this was not a violation of our licensing agreement if used in this way for this specific purpose. You should consider describing the problem you are trying to address from the start as there may be approaches you have not considered that people can share. Axton Grams On Tue, Sep 23, 2008 at 4:01 PM, Brien Dieterle <[EMAIL PROTECTED]> wrote: > ** > Thanks for the warnings, list-- Since it seems so problematic, I am not > going to bother with the remove-from-group or downgrading of License. So, > my process will basically "upgrade" a user account by appending a group to > their Group List, and changing their License Type from Read to Floating. > The list is fairly static so it shouldn't be a big deal to clean it up once > in a while. > > What is the purpose of all of this, you might wonder? It is so a typical > end-user (Read License) can make a request for a certain something that is > approved by a certain person. Here is a generalized example: > > If Bob requests a computer, Jane or Dan would have to approve the request. > So my reference table has: > > 'computer', 'jane;dan' > 'monitor', 'greg;bob' > 'mouse', 'kathy' > > So, Jane, Dan, Greg, Kathy, and Bob all need Floating licenses to be able to > change the status of the request (approval). They are also added to a > specific Approver group that has 5 floating licenses allocated to it. > > Eventually, Bob might be removed from the "monitor" approver list, so he > wouldn't really need a Floating license anymore. In fact, leaving Bob with > a Floating license would be wasteful, since it seems that Floating licenses > are consumed even when doing tasks that only "require" a Read license. > > It would be nice if I could just give everyone Floating license and not > worry about this... > > Thanks again! > > Brien > > On Tue, Sep 23, 2008 at 12:12 PM, Thad K Esser <[EMAIL PROTECTED]> wrote: >> >> ** >> I'm just catching up on my arslist, and might have missed a nuance of your >> goal, but would a computed group help you in any way that would prevent you >> from having to monkey with the user data? >> >> --- >> Having said that, and with full awareness of the issues brought up by >> Axton, you can eliminate issues with a preceding semi-colon by adding one in >> as part of the replace: >> Assuming: >> Group List = "511;507;508;501;518;521;55598;" >> xtmpchar2 = "55598" >> >> Then: >> New List = REPLACE(";" + $Group List$ + ";", ";" + $xtmpchar2$ + ";", >> ";") >> >> You could end up with a Group List that starts with a semi-colon, pull it >> out with a RIGHT() function if you need to. >> Also, depending on details, you could end up with a double semi-colon in >> your list. After any looping is done, you can pull the 2nd one out with an >> additional: >> REPLACE($Group List$, ";;", ";") >> --- >> >> I am curious, what is the nature of this group that only needs members for >> a day? >> >> Thad Esser >> Remedy Developer >> "Argue for your limitations, and sure enough, they're yours."-- Richard >> Bach >> >> >> Brien Dieterle <[EMAIL PROTECTED]> >> Sent by: "Action Request System discussion list(ARSList)" >> >> >> 09/23/2008 11:17 AM >> >> Please respond to >> arslist@ARSLIST.ORG >> To >> arslist@ARSLIST.ORG >> cc >> Subject >> Re: split a field and loop on each piece >> >> >> >> >> ** >> Right, I am only flipping read-only to floating, and back again... Also, >> the database looks like: >> >> 511;507;508;501;518;521;55598; >> >> So, I think I can do a >> REPLACE($Group List$,"55598;","") >> >> and it should be all good after all. Interestingly, Remedy Admin won't >> even let you save an action that threatens t
Re: split a field and loop on each piece
Thanks for the warnings, list-- Since it seems so problematic, I am not going to bother with the remove-from-group or downgrading of License. So, my process will basically "upgrade" a user account by appending a group to their Group List, and changing their License Type from Read to Floating. The list is fairly static so it shouldn't be a big deal to clean it up once in a while. What is the purpose of all of this, you might wonder? It is so a typical end-user (Read License) can make a request for a certain something that is approved by a certain person. Here is a generalized example: If Bob requests a computer, Jane or Dan would have to approve the request. So my reference table has: 'computer', 'jane;dan' 'monitor', 'greg;bob' 'mouse', 'kathy' So, Jane, Dan, Greg, Kathy, and Bob all need Floating licenses to be able to change the status of the request (approval). They are also added to a specific Approver group that has 5 floating licenses allocated to it. Eventually, Bob might be removed from the "monitor" approver list, so he wouldn't really need a Floating license anymore. In fact, leaving Bob with a Floating license would be wasteful, since it seems that Floating licenses are consumed even when doing tasks that only "require" a Read license. It would be nice if I could just give *everyone* Floating license and not worry about this... Thanks again! Brien On Tue, Sep 23, 2008 at 12:12 PM, Thad K Esser <[EMAIL PROTECTED]> wrote: > ** > I'm just catching up on my arslist, and might have missed a nuance of your > goal, but would a computed group help you in any way that would prevent you > from having to monkey with the user data? > > --- > Having said that, and with full awareness of the issues brought up by > Axton, you can eliminate issues with a preceding semi-colon by adding one in > as part of the replace: > Assuming: > Group List = "511;507;508;501;518;521;55598;" > xtmpchar2 = "55598" > > Then: > New List = REPLACE(";" + $Group List$ + ";", ";" + $xtmpchar2$ + ";", > ";") > > You could end up with a Group List that starts with a semi-colon, pull it > out with a RIGHT() function if you need to. > Also, depending on details, you could end up with a double semi-colon in > your list. After any looping is done, you can pull the 2nd one out with an > additional: > REPLACE($Group List$, ";;", ";") > --- > > I am curious, what is the nature of this group that only needs members for > a day? > > *Thad Esser* > Remedy Developer > "*Argue for your limitations, and sure enough, they're yours."*-- Richard > Bach > > > *Brien Dieterle <[EMAIL PROTECTED]>* > Sent by: "Action Request System discussion list(ARSList)" < > arslist@ARSLIST.ORG> > > 09/23/2008 11:17 AM > Please respond to > arslist@ARSLIST.ORG > > To > arslist@ARSLIST.ORG cc > Subject > Re: split a field and loop on each piece > > > > > ** > Right, I am only flipping read-only to floating, and back again... Also, > the database looks like: > > 511;507;508;501;518;521;55598; > > So, I think I can do a > REPLACE($Group List$,"55598;","") > > and it should be all good after all. Interestingly, Remedy Admin won't > even let you save an action that threatens to corrupt the format of this > field (for instance, I tried saving it with replace: ";55598" instead of > "55598;" and it actually said "Error with one of the field/assignments in > the set filter/active link/escalation definition : User (ARERR 168)." > > I thought I was good to go there, and I just realized that > > REPLACE($Group List$, "55598;", "") or even using the group's text-name > > upon saving, gets converted to: > > REPLACE($Group List$, " 55598;", "") > > Notice the extra space before the group id? Any other variation seems to > trigger the error message referenced above. Weird!! > > Other than that, I can successfuly *add* a user to a group, and change > their license from Read to Floating, and back again. I just can't remove > them from the group. Presumably, I can copy the Group List to a tmp field, > do the REPLACE() there, and then put that back in the user group field to > get around Remedy Admin tool being too "smart"... > > Thanks for the suggestions!! > > > > On Tue, Sep 23, 2008 at 10:17 AM, Opela, Gary L CTR USAF AFMC 72 CS/SCBAH < > [EMAIL PROTECTED] <[EMAIL PROTECTED]>> wrote: > I'm not sure of the implications w
Re: split a field and loop on each piece
I'm just catching up on my arslist, and might have missed a nuance of your goal, but would a computed group help you in any way that would prevent you from having to monkey with the user data? --- Having said that, and with full awareness of the issues brought up by Axton, you can eliminate issues with a preceding semi-colon by adding one in as part of the replace: Assuming: Group List = "511;507;508;501;518;521;55598;" xtmpchar2 = "55598" Then: New List = REPLACE(";" + $Group List$ + ";", ";" + $xtmpchar2$ + ";", ";") You could end up with a Group List that starts with a semi-colon, pull it out with a RIGHT() function if you need to. Also, depending on details, you could end up with a double semi-colon in your list. After any looping is done, you can pull the 2nd one out with an additional: REPLACE($Group List$, ";;", ";") --- I am curious, what is the nature of this group that only needs members for a day? Thad Esser Remedy Developer "Argue for your limitations, and sure enough, they're yours."-- Richard Bach Brien Dieterle <[EMAIL PROTECTED]> Sent by: "Action Request System discussion list(ARSList)" 09/23/2008 11:17 AM Please respond to arslist@ARSLIST.ORG To arslist@ARSLIST.ORG cc Subject Re: split a field and loop on each piece ** Right, I am only flipping read-only to floating, and back again... Also, the database looks like: 511;507;508;501;518;521;55598; So, I think I can do a REPLACE($Group List$,"55598;","") and it should be all good after all. Interestingly, Remedy Admin won't even let you save an action that threatens to corrupt the format of this field (for instance, I tried saving it with replace: ";55598" instead of "55598;" and it actually said "Error with one of the field/assignments in the set filter/active link/escalation definition : User (ARERR 168)." I thought I was good to go there, and I just realized that REPLACE($Group List$, "55598;", "") or even using the group's text-name upon saving, gets converted to: REPLACE($Group List$, " 55598;", "") Notice the extra space before the group id? Any other variation seems to trigger the error message referenced above. Weird!! Other than that, I can successfuly add a user to a group, and change their license from Read to Floating, and back again. I just can't remove them from the group. Presumably, I can copy the Group List to a tmp field, do the REPLACE() there, and then put that back in the user group field to get around Remedy Admin tool being too "smart"... Thanks for the suggestions!! On Tue, Sep 23, 2008 at 10:17 AM, Opela, Gary L CTR USAF AFMC 72 CS/SCBAH <[EMAIL PROTECTED]> wrote: I'm not sure of the implications with a floating license of adding/removing a license, since they are not tied to a user. However, with a Fixed License (which is not what you stated you are using), you can only reassign it 3 times per week before it is locked for the rest of the seven days. Gary -Original Message- From: Action Request System discussion list(ARSList) [mailto:[EMAIL PROTECTED] On Behalf Of Brien Dieterle Sent: Tuesday, September 23, 2008 11:26 AM To: arslist@ARSLIST.ORG Subject: Re: split a field and loop on each piece ** Haha, thanks for the tip-- I was planning to use "" in the replace. I forgot to add that anyone that I add to this group also needs a floating license ... and so I'll be changing that license back to read-only as part of the group "flush". Of course, when I set it back to read-only, I won't know if that user had previously been givin a floating license for some other reason... Unless I add another field to the user table, like a checkbox that says "user had a floating license before I messed with this". This is almost getting silly! :-) Brien On Tue, Sep 23, 2008 at 9:00 AM, Opela, Gary L CTR USAF AFMC 72 CS/SCBAH <[EMAIL PROTECTED]> wrote: Actually, I think you might want to do a REPLACE($Group List$, ";1234;" ";") This way, ;1;1234;12;23;4; would go to ;1;12;23;4; So, the ;1234; would go to ;, so you would still have your proper delimiter. Test this in a small scale first to make sure you don't screw up all of your user's groups. I've seen before where junk characters would get put in this field at the database level, and break the user's access to anything. Gary -Original Message- From: Opela, Gary L CTR USAF AFMC 72 CS/SCBAH Sent: Tuesday, September 23, 2008 10:58 AM To: arslist@ARSLIST.ORG Subject: RE: split a field and loop on each piece Hey, I got an idea. Whenever yo
Re: split a field and loop on each piece
As long as 55598 is at the end, this will work. However, if it is in the middle, you will need to do the two escalations as discussed earlier. Thanks, Gary -Original Message- From: Action Request System discussion list(ARSList) [mailto:[EMAIL PROTECTED] On Behalf Of Brien Dieterle Sent: Tuesday, September 23, 2008 1:18 PM To: arslist@ARSLIST.ORG Subject: Re: split a field and loop on each piece ** Right, I am only flipping read-only to floating, and back again... Also, the database looks like: 511;507;508;501;518;521;55598; So, I think I can do a REPLACE($Group List$,"55598;","") and it should be all good after all. Interestingly, Remedy Admin won't even let you save an action that threatens to corrupt the format of this field (for instance, I tried saving it with replace: ";55598" instead of "55598;" and it actually said "Error with one of the field/assignments in the set filter/active link/escalation definition : User (ARERR 168)." I thought I was good to go there, and I just realized that REPLACE($Group List$, "55598;", "") or even using the group's text-name upon saving, gets converted to: REPLACE($Group List$, " 55598;", "") Notice the extra space before the group id? Any other variation seems to trigger the error message referenced above. Weird!! Other than that, I can successfuly add a user to a group, and change their license from Read to Floating, and back again. I just can't remove them from the group. Presumably, I can copy the Group List to a tmp field, do the REPLACE() there, and then put that back in the user group field to get around Remedy Admin tool being too "smart"... Thanks for the suggestions!! On Tue, Sep 23, 2008 at 10:17 AM, Opela, Gary L CTR USAF AFMC 72 CS/SCBAH <[EMAIL PROTECTED]> wrote: I'm not sure of the implications with a floating license of adding/removing a license, since they are not tied to a user. However, with a Fixed License (which is not what you stated you are using), you can only reassign it 3 times per week before it is locked for the rest of the seven days. Gary -Original Message- From: Action Request System discussion list(ARSList) [mailto:[EMAIL PROTECTED] On Behalf Of Brien Dieterle Sent: Tuesday, September 23, 2008 11:26 AM To: arslist@ARSLIST.ORG Subject: Re: split a field and loop on each piece ** Haha, thanks for the tip-- I was planning to use "" in the replace. I forgot to add that anyone that I add to this group also needs a floating license ... and so I'll be changing that license back to read-only as part of the group "flush". Of course, when I set it back to read-only, I won't know if that user had previously been givin a floating license for some other reason... Unless I add another field to the user table, like a checkbox that says "user had a floating license before I messed with this". This is almost getting silly! :-) Brien On Tue, Sep 23, 2008 at 9:00 AM, Opela, Gary L CTR USAF AFMC 72 CS/SCBAH <[EMAIL PROTECTED]> wrote: Actually, I think you might want to do a REPLACE($Group List$, ";1234;" ";") This way, ;1;1234;12;23;4; would go to ;1;12;23;4; So, the ;1234; would go to ;, so you would still have your proper delimiter. Test this in a small scale first to make sure you don't screw up all of your user's groups. I've seen before where junk characters would get put in this field at the database level, and break the user's access to anything. Gary -Original Message----- From: Opela, Gary L CTR USAF AFMC 72 CS/SCBAH Sent: Tuesday, September 23, 2008 10:58 AM To: arslist@ARSLIST.ORG Subject: RE: split a field and loop on each piece Hey, I got an idea. Whenever you are trawling the user table, you can use the REPLACE function. SO, have an escalation hat runs against user, that does the following: REPLACE($Group List$, ";1234;" ";;") You might have to tweak the statement a bit, but that should chop out the group id that you are getting rid of. Have the escalation that adds people back in run about
Re: split a field and loop on each piece
As long as an entry doesn't have a gid of 155598, then your replace should work fine. I can't suggest strongly enough that you seek an alternate route, as string manipulation breaks under a lot of circumstances, depending on your assumptions. Axton Grams On Tue, Sep 23, 2008 at 2:17 PM, Brien Dieterle <[EMAIL PROTECTED]> wrote: > ** > Right, I am only flipping read-only to floating, and back again... Also, the > database looks like: > > 511;507;508;501;518;521;55598; > > So, I think I can do a > REPLACE($Group List$,"55598;","") > > and it should be all good after all. Interestingly, Remedy Admin won't even > let you save an action that threatens to corrupt the format of this field > (for instance, I tried saving it with replace: ";55598" instead of "55598;" > and it actually said "Error with one of the field/assignments in the set > filter/active link/escalation definition : User (ARERR 168)." > > I thought I was good to go there, and I just realized that > > REPLACE($Group List$, "55598;", "") or even using the group's text-name > > upon saving, gets converted to: > > REPLACE($Group List$, " 55598;", "") > > Notice the extra space before the group id? Any other variation seems to > trigger the error message referenced above. Weird!! > > Other than that, I can successfuly add a user to a group, and change their > license from Read to Floating, and back again. I just can't remove them > from the group. Presumably, I can copy the Group List to a tmp field, do > the REPLACE() there, and then put that back in the user group field to get > around Remedy Admin tool being too "smart"... > > Thanks for the suggestions!! > > > > On Tue, Sep 23, 2008 at 10:17 AM, Opela, Gary L CTR USAF AFMC 72 CS/SCBAH > <[EMAIL PROTECTED]> wrote: >> >> I'm not sure of the implications with a floating license of >> adding/removing a license, since they are not tied to a user. >> >> However, with a Fixed License (which is not what you stated you are >> using), you can only reassign it 3 times per week before it is locked >> for the rest of the seven days. >> >> Gary >> >> -Original Message- >> From: Action Request System discussion list(ARSList) >> [mailto:[EMAIL PROTECTED] On Behalf Of Brien Dieterle >> Sent: Tuesday, September 23, 2008 11:26 AM >> To: arslist@ARSLIST.ORG >> Subject: Re: split a field and loop on each piece >> >> ** >> Haha, thanks for the tip-- I was planning to use "" in the replace. I >> forgot to add that anyone that I add to this group also needs a floating >> license ... and so I'll be changing that license back to read-only as >> part of the group "flush". Of course, when I set it back to read-only, >> I won't know if that user had previously been givin a floating license >> for some other reason... Unless I add another field to the user table, >> like a checkbox that says "user had a floating license before I messed >> with this". >> >> This is almost getting silly! :-) >> >> Brien >> >> >> On Tue, Sep 23, 2008 at 9:00 AM, Opela, Gary L CTR USAF AFMC 72 CS/SCBAH >> <[EMAIL PROTECTED]> wrote: >> >> >>Actually, I think you might want to do a REPLACE($Group List$, >> ";1234;" >>";") >> >>This way, ;1;1234;12;23;4; would go to ;1;12;23;4; >> >>So, the ;1234; would go to ;, so you would still have your >> proper >>delimiter. Test this in a small scale first to make sure you >> don't screw >>up all of your user's groups. I've seen before where junk >> characters >>would get put in this field at the database level, and break the >> user's >>access to anything. >> >>Gary >> >> >>-Original Message- >>From: Opela, Gary L CTR USAF AFMC 72 CS/SCBAH >>Sent: Tuesday, September 23, 2008 10:58 AM >>To: arslist@ARSLIST.ORG >> >>Subject: RE: split a field and loop on each piece >> >>Hey, I got an idea. >> >>Whenever you are trawling the user table, you can use the >> REPLACE >>function. >> >>SO, have an escalation hat runs against user, that does the >> following: >>REPLACE($Group List$, ";1234;" ";;") >> >>You might have to tweak the statement a bi
Re: split a field and loop on each piece
Right, I am only flipping read-only to floating, and back again... Also, the database looks like: 511;507;508;501;518;521;55598; So, I think I can do a REPLACE($Group List$,"55598;","") and it should be all good after all. Interestingly, Remedy Admin won't even let you save an action that threatens to corrupt the format of this field (for instance, I tried saving it with replace: ";55598" instead of "55598;" and it actually said "Error with one of the field/assignments in the set filter/active link/escalation definition : User (ARERR 168)." I thought I was good to go there, and I just realized that REPLACE($Group List$, "55598;", "") or even using the group's text-name upon saving, gets converted to: REPLACE($Group List$, " 55598;", "") Notice the extra space before the group id? Any other variation seems to trigger the error message referenced above. Weird!! Other than that, I can successfuly *add* a user to a group, and change their license from Read to Floating, and back again. I just can't remove them from the group. Presumably, I can copy the Group List to a tmp field, do the REPLACE() there, and then put that back in the user group field to get around Remedy Admin tool being too "smart"... Thanks for the suggestions!! On Tue, Sep 23, 2008 at 10:17 AM, Opela, Gary L CTR USAF AFMC 72 CS/SCBAH < [EMAIL PROTECTED]> wrote: > I'm not sure of the implications with a floating license of > adding/removing a license, since they are not tied to a user. > > However, with a Fixed License (which is not what you stated you are > using), you can only reassign it 3 times per week before it is locked > for the rest of the seven days. > > Gary > > -Original Message- > From: Action Request System discussion list(ARSList) > [mailto:[EMAIL PROTECTED] On Behalf Of Brien Dieterle > Sent: Tuesday, September 23, 2008 11:26 AM > To: arslist@ARSLIST.ORG > Subject: Re: split a field and loop on each piece > > ** > Haha, thanks for the tip-- I was planning to use "" in the replace. I > forgot to add that anyone that I add to this group also needs a floating > license ... and so I'll be changing that license back to read-only as > part of the group "flush". Of course, when I set it back to read-only, > I won't know if that user had previously been givin a floating license > for some other reason... Unless I add another field to the user table, > like a checkbox that says "user had a floating license before I messed > with this". > > This is almost getting silly! :-) > > Brien > > > On Tue, Sep 23, 2008 at 9:00 AM, Opela, Gary L CTR USAF AFMC 72 CS/SCBAH > <[EMAIL PROTECTED]> wrote: > > >Actually, I think you might want to do a REPLACE($Group List$, > ";1234;" >";") > >This way, ;1;1234;12;23;4; would go to ;1;12;23;4; > >So, the ;1234; would go to ;, so you would still have your > proper >delimiter. Test this in a small scale first to make sure you > don't screw >up all of your user's groups. I've seen before where junk > characters > would get put in this field at the database level, and break the > user's >access to anything. > >Gary > > >-Original Message- >From: Opela, Gary L CTR USAF AFMC 72 CS/SCBAH >Sent: Tuesday, September 23, 2008 10:58 AM >To: arslist@ARSLIST.ORG > >Subject: RE: split a field and loop on each piece > >Hey, I got an idea. > >Whenever you are trawling the user table, you can use the > REPLACE >function. > >SO, have an escalation hat runs against user, that does the > following: >REPLACE($Group List$, ";1234;" ";;") > >You might have to tweak the statement a bit, but that should > chop out > the group id that you are getting rid of. > >Have the escalation that adds people back in run about 30 > minutes to an >hour later. > > >Gary > >-Original Message- >From: Action Request System discussion list(ARSList) >[mailto:[EMAIL PROTECTED] On Behalf Of Brien Dieterle > >Sent: Tuesday, September 23, 2008 10:45 AM > >To: arslist@ARSLIST.ORG >Subject: Re: split a field and loop on each piece > >** >Yes on trawling User table, I want to remove everyone from this > group >every night and then add everyone back from the guide. > >I'll have to think about the trigger some more,
Re: split a field and loop on each piece
I'm not sure of the implications with a floating license of adding/removing a license, since they are not tied to a user. However, with a Fixed License (which is not what you stated you are using), you can only reassign it 3 times per week before it is locked for the rest of the seven days. Gary -Original Message- From: Action Request System discussion list(ARSList) [mailto:[EMAIL PROTECTED] On Behalf Of Brien Dieterle Sent: Tuesday, September 23, 2008 11:26 AM To: arslist@ARSLIST.ORG Subject: Re: split a field and loop on each piece ** Haha, thanks for the tip-- I was planning to use "" in the replace. I forgot to add that anyone that I add to this group also needs a floating license ... and so I'll be changing that license back to read-only as part of the group "flush". Of course, when I set it back to read-only, I won't know if that user had previously been givin a floating license for some other reason... Unless I add another field to the user table, like a checkbox that says "user had a floating license before I messed with this". This is almost getting silly! :-) Brien On Tue, Sep 23, 2008 at 9:00 AM, Opela, Gary L CTR USAF AFMC 72 CS/SCBAH <[EMAIL PROTECTED]> wrote: Actually, I think you might want to do a REPLACE($Group List$, ";1234;" ";") This way, ;1;1234;12;23;4; would go to ;1;12;23;4; So, the ;1234; would go to ;, so you would still have your proper delimiter. Test this in a small scale first to make sure you don't screw up all of your user's groups. I've seen before where junk characters would get put in this field at the database level, and break the user's access to anything. Gary -Original Message- From: Opela, Gary L CTR USAF AFMC 72 CS/SCBAH Sent: Tuesday, September 23, 2008 10:58 AM To: arslist@ARSLIST.ORG Subject: RE: split a field and loop on each piece Hey, I got an idea. Whenever you are trawling the user table, you can use the REPLACE function. SO, have an escalation hat runs against user, that does the following: REPLACE($Group List$, ";1234;" ";;") You might have to tweak the statement a bit, but that should chop out the group id that you are getting rid of. Have the escalation that adds people back in run about 30 minutes to an hour later. Gary -Original Message- From: Action Request System discussion list(ARSList) [mailto:[EMAIL PROTECTED] On Behalf Of Brien Dieterle Sent: Tuesday, September 23, 2008 10:45 AM To: arslist@ARSLIST.ORG Subject: Re: split a field and loop on each piece ** Yes on trawling User table, I want to remove everyone from this group every night and then add everyone back from the guide. I'll have to think about the trigger some more, but I think I want the guide to trigger on modify so that if a new user is added to that field they are added to the group immediately instead of only during the nightly sync. Thanks again for all your help! Brien On Tue, Sep 23, 2008 at 4:52 AM, Opela, Gary L CTR USAF AFMC 72 CS/SCBAH <[EMAIL PROTECTED]> wrote: Yeah, I was wondering if filter phasing would cause you an issue. Adding the `! was good. For the part on the escalations, why are you trawling the user table, looking for the group and removing it? Are you going through each night and removing all users from the group, then re-adding only the users from the guide? As far as having a field to modify to trigger the workflow, I would suggest adding a read/only radio button so that your filter that calls the guide can explicitly check for that flag being set. This way you can lock it down to run exactly only when you want it to. Gary -Original Message- From: Action Request System discussion list(ARSList) [mailto:[EMAIL PROTECTED] On Behalf Of Brien Dieterle Sent: Monday, September 22, 2008 6:15 PM To: arslist@ARSLIST.ORG Subject: Re: split a field and loop on each piece ** Gary, brilliant. Works like a champ! For posterity, just had to add `
Re: split a field and loop on each piece
Doesn't it start the string with a semi-colon prefixed to it? If not, it sure needs to. If not, then make sure that the group id is not a sub-set of any of your other group ids, and just do a REPLACE($Group ID$, ";2342;", ";") if the 'Group ID' LIKE "%;1234;%" and have a second escalation to fire to run on if the 'Group ID' LIKE "1234;" that will do a REPLACE($Group ID$, "1234;", "") Something like that, just play with it. -Original Message- From: Action Request System discussion list(ARSList) [mailto:[EMAIL PROTECTED] On Behalf Of Axton Sent: Tuesday, September 23, 2008 12:09 PM To: arslist@ARSLIST.ORG Subject: Re: split a field and loop on each piece What of: 1234;1; 1;1234; 1;1234;2 ? Axton Grams On Tue, Sep 23, 2008 at 12:00 PM, Opela, Gary L CTR USAF AFMC 72 CS/SCBAH <[EMAIL PROTECTED]> wrote: > Actually, I think you might want to do a REPLACE($Group List$, ";1234;" > ";") > > This way, ;1;1234;12;23;4; would go to ;1;12;23;4; > > So, the ;1234; would go to ;, so you would still have your proper > delimiter. Test this in a small scale first to make sure you don't screw > up all of your user's groups. I've seen before where junk characters > would get put in this field at the database level, and break the user's > access to anything. > > Gary > > -----Original Message----- > From: Opela, Gary L CTR USAF AFMC 72 CS/SCBAH > Sent: Tuesday, September 23, 2008 10:58 AM > To: arslist@ARSLIST.ORG > Subject: RE: split a field and loop on each piece > > Hey, I got an idea. > > Whenever you are trawling the user table, you can use the REPLACE > function. > > SO, have an escalation hat runs against user, that does the following: > REPLACE($Group List$, ";1234;" ";;") > > You might have to tweak the statement a bit, but that should chop out > the group id that you are getting rid of. > > Have the escalation that adds people back in run about 30 minutes to an > hour later. > > Gary > > -Original Message- > From: Action Request System discussion list(ARSList) > [mailto:[EMAIL PROTECTED] On Behalf Of Brien Dieterle > Sent: Tuesday, September 23, 2008 10:45 AM > To: arslist@ARSLIST.ORG > Subject: Re: split a field and loop on each piece > > ** > Yes on trawling User table, I want to remove everyone from this group > every night and then add everyone back from the guide. > > I'll have to think about the trigger some more, but I think I want the > guide to trigger on modify so that if a new user is added to that field > they are added to the group immediately instead of only during the > nightly sync. > > Thanks again for all your help! > > Brien > > > On Tue, Sep 23, 2008 at 4:52 AM, Opela, Gary L CTR USAF AFMC 72 CS/SCBAH > <[EMAIL PROTECTED]> wrote: > > >Yeah, I was wondering if filter phasing would cause you an > issue. Adding >the `! was good. > >For the part on the escalations, why are you trawling the user > table, >looking for the group and removing it? Are you going through > each night >and removing all users from the group, then re-adding only the > users >from the guide? > >As far as having a field to modify to trigger the workflow, I > would >suggest adding a read/only radio button so that your filter that > calls >the guide can explicitly check for that flag being set. This way > you can >lock it down to run exactly only when you want it to. > > >Gary > >-Original Message- >From: Action Request System discussion list(ARSList) >[mailto:[EMAIL PROTECTED] On Behalf Of Brien Dieterle > >Sent: Monday, September 22, 2008 6:15 PM >To: arslist@ARSLIST.ORG >Subject: Re: split a field and loop on each piece > >** > >Gary, brilliant. Works like a champ! > >For posterity, just had to add `! to the filter that actually > does the >group adding,and a tmpgroups field to store the user's other > groups, >because I can't seem to append to a field during a push > operation. > >Now I just need to setup an escalation to "flush" this group > (crawl User >table and do a set fields/string replace on the group I want to > flush?), >and then trigger this filter guide to push everyone back into > the group >(crawl my other table (escalation) and modify a field to trigger > filter >action (modify) to launch the filter guide?. The idea being to > keep a >group li
Re: split a field and loop on each piece
What of: 1234;1; 1;1234; 1;1234;2 ? Axton Grams On Tue, Sep 23, 2008 at 12:00 PM, Opela, Gary L CTR USAF AFMC 72 CS/SCBAH <[EMAIL PROTECTED]> wrote: > Actually, I think you might want to do a REPLACE($Group List$, ";1234;" > ";") > > This way, ;1;1234;12;23;4; would go to ;1;12;23;4; > > So, the ;1234; would go to ;, so you would still have your proper > delimiter. Test this in a small scale first to make sure you don't screw > up all of your user's groups. I've seen before where junk characters > would get put in this field at the database level, and break the user's > access to anything. > > Gary > > -Original Message- > From: Opela, Gary L CTR USAF AFMC 72 CS/SCBAH > Sent: Tuesday, September 23, 2008 10:58 AM > To: arslist@ARSLIST.ORG > Subject: RE: split a field and loop on each piece > > Hey, I got an idea. > > Whenever you are trawling the user table, you can use the REPLACE > function. > > SO, have an escalation hat runs against user, that does the following: > REPLACE($Group List$, ";1234;" ";;") > > You might have to tweak the statement a bit, but that should chop out > the group id that you are getting rid of. > > Have the escalation that adds people back in run about 30 minutes to an > hour later. > > Gary > > -Original Message- > From: Action Request System discussion list(ARSList) > [mailto:[EMAIL PROTECTED] On Behalf Of Brien Dieterle > Sent: Tuesday, September 23, 2008 10:45 AM > To: arslist@ARSLIST.ORG > Subject: Re: split a field and loop on each piece > > ** > Yes on trawling User table, I want to remove everyone from this group > every night and then add everyone back from the guide. > > I'll have to think about the trigger some more, but I think I want the > guide to trigger on modify so that if a new user is added to that field > they are added to the group immediately instead of only during the > nightly sync. > > Thanks again for all your help! > > Brien > > > On Tue, Sep 23, 2008 at 4:52 AM, Opela, Gary L CTR USAF AFMC 72 CS/SCBAH > <[EMAIL PROTECTED]> wrote: > > >Yeah, I was wondering if filter phasing would cause you an > issue. Adding >the `! was good. > >For the part on the escalations, why are you trawling the user > table, >looking for the group and removing it? Are you going through > each night >and removing all users from the group, then re-adding only the > users >from the guide? > >As far as having a field to modify to trigger the workflow, I > would >suggest adding a read/only radio button so that your filter that > calls >the guide can explicitly check for that flag being set. This way > you can >lock it down to run exactly only when you want it to. > > >Gary > >-Original Message- >From: Action Request System discussion list(ARSList) >[mailto:[EMAIL PROTECTED] On Behalf Of Brien Dieterle > >Sent: Monday, September 22, 2008 6:15 PM >To: arslist@ARSLIST.ORG >Subject: Re: split a field and loop on each piece > >** > >Gary, brilliant. Works like a champ! > >For posterity, just had to add `! to the filter that actually > does the >group adding,and a tmpgroups field to store the user's other > groups, >because I can't seem to append to a field during a push > operation. > >Now I just need to setup an escalation to "flush" this group > (crawl User >table and do a set fields/string replace on the group I want to > flush?), >and then trigger this filter guide to push everyone back into > the group >(crawl my other table (escalation) and modify a field to trigger > filter >action (modify) to launch the filter guide?. The idea being to > keep a >group list populated with exactly and only the users from the > filter >guide Gary outlined. > >If there is a better way than above, please feel free to let me > know >I'll save this for tomorrow. > >Thanks again Gary and everyone else that responded! > >Brien > > >On Mon, Sep 22, 2008 at 12:32 PM, Opela, Gary L CTR USAF AFMC 72 >CS/SCBAH <[EMAIL PROTECTED]> wrote: > > > Good point, you are using usernames. > > Whatever the format in the database is what you should go > by, as >filters > are server-side code, and couldn't care less what the > client >
Re: split a field and loop on each piece
Brien, I would actually advocate that you not take this approach. Constantly mucking with User data can be a sore spot for performance and can also increase your risk of finding bugs in the internal ( and proprietary ) code for license management. Or even finding less known rules about how many times a user can be assigned a Fixed license in a short period of time. Yea, I know you said "anyone that I add to this group also needs a floating", but solutions like this (AR System applications) tend to be extended over time. You may later find that such an assumption may not hold true for the next version/feature request. However, a more general design will likely scale farther and I think actually be easier to implement too. I would strongly suggest that you adopt the "other thought" from the start of this thread. Ref: From: Brien Dieterle <[EMAIL PROTECTED]> date: Mon, Sep 22, 2008 at 1:50 PM " I am strongly considering just abandoning the Field 112 anyway, and using an entire form just for storing the UserID to Parent. Then at least I can just loop over that form and forget about the field splitting... " If you manage these changes in a custom application then you can better detect triggering conditions and you can choose (as each trigger happens) if each change is important enough to do "now" vs "later" too. You could let managers add/remove users from ARS Groups and later propagate the change into the User's 'Group List'. HTH. -- Carey Matthew Black Remedy Skilled Professional (RSP) ARS = Action Request System(Remedy) Love, then teach Solution = People + Process + Tools Fast, Accurate, Cheap Pick two. On Tue, Sep 23, 2008 at 11:44 AM, Brien Dieterle <[EMAIL PROTECTED]> wrote: > ** > Yes on trawling User table, I want to remove everyone from this group every > night and then add everyone back from the guide. > > I'll have to think about the trigger some more, but I think I want the guide > to trigger on modify so that if a new user is added to that field they are > added to the group immediately instead of only during the nightly sync. > > Thanks again for all your help! > > Brien ___ UNSUBSCRIBE or access ARSlist Archives at www.arslist.org Platinum Sponsor: www.rmsportal.com ARSlist: "Where the Answers Are"
Re: split a field and loop on each piece
Haha, thanks for the tip-- I was planning to use "" in the replace. I forgot to add that anyone that I add to this group also needs a floating license ... and so I'll be changing that license *back *to read-only as part of the group "flush". Of course, when I set it back to read-only, I won't know if that user had previously been givin a floating license for some * other* reason... Unless I add another field to the user table, like a checkbox that says "user had a floating license before I messed with this". This is almost getting silly! :-) Brien On Tue, Sep 23, 2008 at 9:00 AM, Opela, Gary L CTR USAF AFMC 72 CS/SCBAH < [EMAIL PROTECTED]> wrote: > Actually, I think you might want to do a REPLACE($Group List$, ";1234;" > ";") > > This way, ;1;1234;12;23;4; would go to ;1;12;23;4; > > So, the ;1234; would go to ;, so you would still have your proper > delimiter. Test this in a small scale first to make sure you don't screw > up all of your user's groups. I've seen before where junk characters > would get put in this field at the database level, and break the user's > access to anything. > > Gary > > -Original Message- > From: Opela, Gary L CTR USAF AFMC 72 CS/SCBAH > Sent: Tuesday, September 23, 2008 10:58 AM > To: arslist@ARSLIST.ORG > Subject: RE: split a field and loop on each piece > > Hey, I got an idea. > > Whenever you are trawling the user table, you can use the REPLACE > function. > > SO, have an escalation hat runs against user, that does the following: > REPLACE($Group List$, ";1234;" ";;") > > You might have to tweak the statement a bit, but that should chop out > the group id that you are getting rid of. > > Have the escalation that adds people back in run about 30 minutes to an > hour later. > > Gary > > -Original Message----- > From: Action Request System discussion list(ARSList) > [mailto:[EMAIL PROTECTED] On Behalf Of Brien Dieterle > Sent: Tuesday, September 23, 2008 10:45 AM > To: arslist@ARSLIST.ORG > Subject: Re: split a field and loop on each piece > > ** > Yes on trawling User table, I want to remove everyone from this group > every night and then add everyone back from the guide. > > I'll have to think about the trigger some more, but I think I want the > guide to trigger on modify so that if a new user is added to that field > they are added to the group immediately instead of only during the > nightly sync. > > Thanks again for all your help! > > Brien > > > On Tue, Sep 23, 2008 at 4:52 AM, Opela, Gary L CTR USAF AFMC 72 CS/SCBAH > <[EMAIL PROTECTED]> wrote: > > >Yeah, I was wondering if filter phasing would cause you an > issue. Adding >the `! was good. > >For the part on the escalations, why are you trawling the user > table, >looking for the group and removing it? Are you going through > each night >and removing all users from the group, then re-adding only the > users >from the guide? > >As far as having a field to modify to trigger the workflow, I > would >suggest adding a read/only radio button so that your filter that > calls >the guide can explicitly check for that flag being set. This way > you can > lock it down to run exactly only when you want it to. > > >Gary > >-Original Message- >From: Action Request System discussion list(ARSList) >[mailto:[EMAIL PROTECTED] On Behalf Of Brien Dieterle > >Sent: Monday, September 22, 2008 6:15 PM >To: arslist@ARSLIST.ORG >Subject: Re: split a field and loop on each piece > >** > >Gary, brilliant. Works like a champ! > >For posterity, just had to add `! to the filter that actually > does the >group adding,and a tmpgroups field to store the user's other > groups, >because I can't seem to append to a field during a push > operation. > >Now I just need to setup an escalation to "flush" this group > (crawl User >table and do a set fields/string replace on the group I want to > flush?), >and then trigger this filter guide to push everyone back into > the group >(crawl my other table (escalation) and modify a field to trigger > filter >action (modify) to launch the filter guide?. The idea being to > keep a >group list populated with exactly and only the users from the > filter >guide Gary outlined. > >If there is a better way than above, please feel free to let me > know >
Re: split a field and loop on each piece
Actually, I think you might want to do a REPLACE($Group List$, ";1234;" ";") This way, ;1;1234;12;23;4; would go to ;1;12;23;4; So, the ;1234; would go to ;, so you would still have your proper delimiter. Test this in a small scale first to make sure you don't screw up all of your user's groups. I've seen before where junk characters would get put in this field at the database level, and break the user's access to anything. Gary -Original Message- From: Opela, Gary L CTR USAF AFMC 72 CS/SCBAH Sent: Tuesday, September 23, 2008 10:58 AM To: arslist@ARSLIST.ORG Subject: RE: split a field and loop on each piece Hey, I got an idea. Whenever you are trawling the user table, you can use the REPLACE function. SO, have an escalation hat runs against user, that does the following: REPLACE($Group List$, ";1234;" ";;") You might have to tweak the statement a bit, but that should chop out the group id that you are getting rid of. Have the escalation that adds people back in run about 30 minutes to an hour later. Gary -Original Message- From: Action Request System discussion list(ARSList) [mailto:[EMAIL PROTECTED] On Behalf Of Brien Dieterle Sent: Tuesday, September 23, 2008 10:45 AM To: arslist@ARSLIST.ORG Subject: Re: split a field and loop on each piece ** Yes on trawling User table, I want to remove everyone from this group every night and then add everyone back from the guide. I'll have to think about the trigger some more, but I think I want the guide to trigger on modify so that if a new user is added to that field they are added to the group immediately instead of only during the nightly sync. Thanks again for all your help! Brien On Tue, Sep 23, 2008 at 4:52 AM, Opela, Gary L CTR USAF AFMC 72 CS/SCBAH <[EMAIL PROTECTED]> wrote: Yeah, I was wondering if filter phasing would cause you an issue. Adding the `! was good. For the part on the escalations, why are you trawling the user table, looking for the group and removing it? Are you going through each night and removing all users from the group, then re-adding only the users from the guide? As far as having a field to modify to trigger the workflow, I would suggest adding a read/only radio button so that your filter that calls the guide can explicitly check for that flag being set. This way you can lock it down to run exactly only when you want it to. Gary -Original Message- From: Action Request System discussion list(ARSList) [mailto:[EMAIL PROTECTED] On Behalf Of Brien Dieterle Sent: Monday, September 22, 2008 6:15 PM To: arslist@ARSLIST.ORG Subject: Re: split a field and loop on each piece ** Gary, brilliant. Works like a champ! For posterity, just had to add `! to the filter that actually does the group adding,and a tmpgroups field to store the user's other groups, because I can't seem to append to a field during a push operation. Now I just need to setup an escalation to "flush" this group (crawl User table and do a set fields/string replace on the group I want to flush?), and then trigger this filter guide to push everyone back into the group (crawl my other table (escalation) and modify a field to trigger filter action (modify) to launch the filter guide?. The idea being to keep a group list populated with exactly and only the users from the filter guide Gary outlined. If there is a better way than above, please feel free to let me know I'll save this for tomorrow. Thanks again Gary and everyone else that responded! Brien On Mon, Sep 22, 2008 at 12:32 PM, Opela, Gary L CTR USAF AFMC 72 CS/SCBAH <[EMAIL PROTECTED]> wrote: Good point, you are using usernames. Whatever the format in the database is what you should go by, as filters are server-side code, and couldn't care less what the client displays. Let me know if it works, so I'll feel good and will be nicer to my co-workers :) Gary -Original Message- From: Action Request System discussion list(ARSList) __Platinum Sponsor: www.rmsportal.com ARSlist: "Where the Answers Are" html___ ___ UNSUBSCRIBE or access ARSlist Archives at www.arslist.org Platinum Sponsor: www.rmsportal.com
Re: split a field and loop on each piece
Hey, I got an idea. Whenever you are trawling the user table, you can use the REPLACE function. SO, have an escalation hat runs against user, that does the following: REPLACE($Group List$, ";1234;" ";;") You might have to tweak the statement a bit, but that should chop out the group id that you are getting rid of. Have the escalation that adds people back in run about 30 minutes to an hour later. Gary -Original Message- From: Action Request System discussion list(ARSList) [mailto:[EMAIL PROTECTED] On Behalf Of Brien Dieterle Sent: Tuesday, September 23, 2008 10:45 AM To: arslist@ARSLIST.ORG Subject: Re: split a field and loop on each piece ** Yes on trawling User table, I want to remove everyone from this group every night and then add everyone back from the guide. I'll have to think about the trigger some more, but I think I want the guide to trigger on modify so that if a new user is added to that field they are added to the group immediately instead of only during the nightly sync. Thanks again for all your help! Brien On Tue, Sep 23, 2008 at 4:52 AM, Opela, Gary L CTR USAF AFMC 72 CS/SCBAH <[EMAIL PROTECTED]> wrote: Yeah, I was wondering if filter phasing would cause you an issue. Adding the `! was good. For the part on the escalations, why are you trawling the user table, looking for the group and removing it? Are you going through each night and removing all users from the group, then re-adding only the users from the guide? As far as having a field to modify to trigger the workflow, I would suggest adding a read/only radio button so that your filter that calls the guide can explicitly check for that flag being set. This way you can lock it down to run exactly only when you want it to. Gary -Original Message- From: Action Request System discussion list(ARSList) [mailto:[EMAIL PROTECTED] On Behalf Of Brien Dieterle Sent: Monday, September 22, 2008 6:15 PM To: arslist@ARSLIST.ORG Subject: Re: split a field and loop on each piece ** Gary, brilliant. Works like a champ! For posterity, just had to add `! to the filter that actually does the group adding,and a tmpgroups field to store the user's other groups, because I can't seem to append to a field during a push operation. Now I just need to setup an escalation to "flush" this group (crawl User table and do a set fields/string replace on the group I want to flush?), and then trigger this filter guide to push everyone back into the group (crawl my other table (escalation) and modify a field to trigger filter action (modify) to launch the filter guide?. The idea being to keep a group list populated with exactly and only the users from the filter guide Gary outlined. If there is a better way than above, please feel free to let me know I'll save this for tomorrow. Thanks again Gary and everyone else that responded! Brien On Mon, Sep 22, 2008 at 12:32 PM, Opela, Gary L CTR USAF AFMC 72 CS/SCBAH <[EMAIL PROTECTED]> wrote: Good point, you are using usernames. Whatever the format in the database is what you should go by, as filters are server-side code, and couldn't care less what the client displays. Let me know if it works, so I'll feel good and will be nicer to my co-workers :) Gary -Original Message- From: Action Request System discussion list(ARSList) __Platinum Sponsor: www.rmsportal.com ARSlist: "Where the Answers Are" html___ ___ UNSUBSCRIBE or access ARSlist Archives at www.arslist.org Platinum Sponsor: www.rmsportal.com ARSlist: "Where the Answers Are" __Platinum Sponsor: www.rmsportal.com ARSlist: "Where the Answers Are" html___ ___ UNSUBSCRIBE or access ARSlist Archives at www.arslist.org Platinum Sponsor: www.rmsportal.com ARSlist: "Where the Answers Are"
Re: split a field and loop on each piece
Yes on trawling User table, I want to remove everyone from this group every night and then add everyone back from the guide. I'll have to think about the trigger some more, but I think I want the guide to trigger on modify so that if a new user is added to that field they are added to the group immediately instead of only during the nightly sync. Thanks again for all your help! Brien On Tue, Sep 23, 2008 at 4:52 AM, Opela, Gary L CTR USAF AFMC 72 CS/SCBAH < [EMAIL PROTECTED]> wrote: > Yeah, I was wondering if filter phasing would cause you an issue. Adding > the `! was good. > > For the part on the escalations, why are you trawling the user table, > looking for the group and removing it? Are you going through each night > and removing all users from the group, then re-adding only the users > from the guide? > > As far as having a field to modify to trigger the workflow, I would > suggest adding a read/only radio button so that your filter that calls > the guide can explicitly check for that flag being set. This way you can > lock it down to run exactly only when you want it to. > > Gary > > -Original Message- > From: Action Request System discussion list(ARSList) > [mailto:[EMAIL PROTECTED] On Behalf Of Brien Dieterle > Sent: Monday, September 22, 2008 6:15 PM > To: arslist@ARSLIST.ORG > Subject: Re: split a field and loop on each piece > > ** > Gary, brilliant. Works like a champ! > > For posterity, just had to add `! to the filter that actually does the > group adding,and a tmpgroups field to store the user's other groups, > because I can't seem to append to a field during a push operation. > > Now I just need to setup an escalation to "flush" this group (crawl User > table and do a set fields/string replace on the group I want to flush?), > and then trigger this filter guide to push everyone back into the group > (crawl my other table (escalation) and modify a field to trigger filter > action (modify) to launch the filter guide?. The idea being to keep a > group list populated with exactly and only the users from the filter > guide Gary outlined. > > If there is a better way than above, please feel free to let me know > I'll save this for tomorrow. > > Thanks again Gary and everyone else that responded! > > Brien > > > On Mon, Sep 22, 2008 at 12:32 PM, Opela, Gary L CTR USAF AFMC 72 > CS/SCBAH <[EMAIL PROTECTED]> wrote: > > >Good point, you are using usernames. > >Whatever the format in the database is what you should go by, as > filters >are server-side code, and couldn't care less what the client > displays. > >Let me know if it works, so I'll feel good and will be nicer to > my >co-workers :) > >Gary > > >-Original Message- >From: Action Request System discussion list(ARSList) > __Platinum Sponsor: www.rmsportal.com ARSlist: "Where the > Answers Are" html___ > > > ___ > UNSUBSCRIBE or access ARSlist Archives at www.arslist.org > Platinum Sponsor: www.rmsportal.com ARSlist: "Where the Answers Are" > ___ UNSUBSCRIBE or access ARSlist Archives at www.arslist.org Platinum Sponsor: www.rmsportal.com ARSlist: "Where the Answers Are"
Re: split a field and loop on each piece
Yeah, I was wondering if filter phasing would cause you an issue. Adding the `! was good. For the part on the escalations, why are you trawling the user table, looking for the group and removing it? Are you going through each night and removing all users from the group, then re-adding only the users from the guide? As far as having a field to modify to trigger the workflow, I would suggest adding a read/only radio button so that your filter that calls the guide can explicitly check for that flag being set. This way you can lock it down to run exactly only when you want it to. Gary -Original Message- From: Action Request System discussion list(ARSList) [mailto:[EMAIL PROTECTED] On Behalf Of Brien Dieterle Sent: Monday, September 22, 2008 6:15 PM To: arslist@ARSLIST.ORG Subject: Re: split a field and loop on each piece ** Gary, brilliant. Works like a champ! For posterity, just had to add `! to the filter that actually does the group adding,and a tmpgroups field to store the user's other groups, because I can't seem to append to a field during a push operation. Now I just need to setup an escalation to "flush" this group (crawl User table and do a set fields/string replace on the group I want to flush?), and then trigger this filter guide to push everyone back into the group (crawl my other table (escalation) and modify a field to trigger filter action (modify) to launch the filter guide?. The idea being to keep a group list populated with exactly and only the users from the filter guide Gary outlined. If there is a better way than above, please feel free to let me know I'll save this for tomorrow. Thanks again Gary and everyone else that responded! Brien On Mon, Sep 22, 2008 at 12:32 PM, Opela, Gary L CTR USAF AFMC 72 CS/SCBAH <[EMAIL PROTECTED]> wrote: Good point, you are using usernames. Whatever the format in the database is what you should go by, as filters are server-side code, and couldn't care less what the client displays. Let me know if it works, so I'll feel good and will be nicer to my co-workers :) Gary -Original Message- From: Action Request System discussion list(ARSList) __Platinum Sponsor: www.rmsportal.com ARSlist: "Where the Answers Are" html___ ___ UNSUBSCRIBE or access ARSlist Archives at www.arslist.org Platinum Sponsor: www.rmsportal.com ARSlist: "Where the Answers Are"
Re: split a field and loop on each piece
Gary, brilliant. Works like a champ! For posterity, just had to add `! to the filter that actually does the group adding,and a tmpgroups field to store the user's other groups, because I can't seem to append to a field during a push operation. Now I just need to setup an escalation to "flush" this group (crawl User table and do a set fields/string replace on the group I want to flush?), and then trigger this filter guide to push everyone back into the group (crawl my other table (escalation) and modify a field to trigger filter action (modify) to launch the filter guide?. The idea being to keep a group list populated with exactly and only the users from the filter guide Gary outlined. If there is a better way than above, please feel free to let me know I'll save this for tomorrow. Thanks again Gary and everyone else that responded! Brien On Mon, Sep 22, 2008 at 12:32 PM, Opela, Gary L CTR USAF AFMC 72 CS/SCBAH < [EMAIL PROTECTED]> wrote: > Good point, you are using usernames. > > Whatever the format in the database is what you should go by, as filters > are server-side code, and couldn't care less what the client displays. > > Let me know if it works, so I'll feel good and will be nicer to my > co-workers :) > > Gary > > -Original Message- > From: Action Request System discussion list(ARSList) > [mailto:[EMAIL PROTECTED] On Behalf Of Brien Dieterle > Sent: Monday, September 22, 2008 1:47 PM > To: arslist@ARSLIST.ORG > Subject: Re: split a field and loop on each piece > > ** > Actually I think this is a great idea. I'm not putting groups in Field > 112, but usernames-- and they MUST be surrounded by single quotes. In > fact, on the database level they are separated by semi-colons (sorta > confusing). So, I don't think I should have a problem delimiting by > semicolon even if I can't "see" the semicolon via the User Interface (as > Joe just mentioned). > > Thanks Gary and everyone, I will give this a shot. > > Brien > > > On Mon, Sep 22, 2008 at 11:21 AM, Opela, Gary L CTR USAF AFMC 72 > CS/SCBAH <[EMAIL PROTECTED]> wrote: > > >Oh ouch. Well, thanks for waiting until after I typed up a > solution to >point this out, Axton :) > >-Gary Opela, Jr. > > >-Original Message- >From: Action Request System discussion list(ARSList) > __Platinum Sponsor: www.rmsportal.com ARSlist: "Where the > Answers Are" html___ > > > ___ > UNSUBSCRIBE or access ARSlist Archives at www.arslist.org > Platinum Sponsor: www.rmsportal.com ARSlist: "Where the Answers Are" > ___ UNSUBSCRIBE or access ARSlist Archives at www.arslist.org Platinum Sponsor: www.rmsportal.com ARSlist: "Where the Answers Are"
Re: split a field and loop on each piece
Good point, you are using usernames. Whatever the format in the database is what you should go by, as filters are server-side code, and couldn't care less what the client displays. Let me know if it works, so I'll feel good and will be nicer to my co-workers :) Gary -Original Message- From: Action Request System discussion list(ARSList) [mailto:[EMAIL PROTECTED] On Behalf Of Brien Dieterle Sent: Monday, September 22, 2008 1:47 PM To: arslist@ARSLIST.ORG Subject: Re: split a field and loop on each piece ** Actually I think this is a great idea. I'm not putting groups in Field 112, but usernames-- and they MUST be surrounded by single quotes. In fact, on the database level they are separated by semi-colons (sorta confusing). So, I don't think I should have a problem delimiting by semicolon even if I can't "see" the semicolon via the User Interface (as Joe just mentioned). Thanks Gary and everyone, I will give this a shot. Brien On Mon, Sep 22, 2008 at 11:21 AM, Opela, Gary L CTR USAF AFMC 72 CS/SCBAH <[EMAIL PROTECTED]> wrote: Oh ouch. Well, thanks for waiting until after I typed up a solution to point this out, Axton :) -Gary Opela, Jr. -Original Message- From: Action Request System discussion list(ARSList) __Platinum Sponsor: www.rmsportal.com ARSlist: "Where the Answers Are" html___ ___ UNSUBSCRIBE or access ARSlist Archives at www.arslist.org Platinum Sponsor: www.rmsportal.com ARSlist: "Where the Answers Are"
Re: split a field and loop on each piece
Actually I think this is a great idea. I'm not putting groups in Field 112, but usernames-- and they MUST be surrounded by single quotes. In fact, on the database level they are separated by semi-colons (sorta confusing). So, I don't think I should have a problem delimiting by semicolon even if I can't "see" the semicolon via the User Interface (as Joe just mentioned). Thanks Gary and everyone, I will give this a shot. Brien On Mon, Sep 22, 2008 at 11:21 AM, Opela, Gary L CTR USAF AFMC 72 CS/SCBAH < [EMAIL PROTECTED]> wrote: > Oh ouch. Well, thanks for waiting until after I typed up a solution to > point this out, Axton :) > > -Gary Opela, Jr. > > -Original Message- > From: Action Request System discussion list(ARSList) > [mailto:[EMAIL PROTECTED] On Behalf Of Axton > Sent: Monday, September 22, 2008 1:16 PM > To: arslist@ARSLIST.ORG > Subject: Re: split a field and loop on each piece > > I would suggest you forget about parsing the string. The delimitter > is a space, and a space can be a character in one of the values. What > this means is that once the data is in the field, you can not reliably > get it back out of the field. > > Consider you have the following groups (please excuse the strange > names, they are to demonstrate a point): > "1 2" > "2 3" > "3 4" > "1" > "2" > "3" > "4" > > So lets say you put the following groups into the assignee group field: > 1, 2, 3, 4 > > Which looks like this: > 1 2 3 4 > > How do you effectively parse that value into the proper groups? You > could get any of the following depending on how you parse it: > 1, 2, 3, 4 > 1 2, 3 4 > 1, 2 3, 4 > 1, 2, 3 4 > 1 2, 3 4 > > Good luck and may your hair stay attached to your head with the > problems you will encounter using this approach. > > Axton Grams > > On Mon, Sep 22, 2008 at 1:50 PM, Brien Dieterle > <[EMAIL PROTECTED]> wrote: > > ** > > Hello list, here's another one for ya. > > > > I'm working with field 112 on a form, that may contain one userID, or > it > > might contain a bunch (like 'user1'; 'user2'; 'user3'), etc. > > > > I want to loop over all of these records, and then loop on each userID > > within field 112 (loop in a loop?) and do something with the UserID > (In this > > case, add the user to a group) > > > > I've done table looping before, but I have no idea where to begin to > loop > > over a split field. > > > > First of all, how would I split this field into pieces (individual > userIDs) > > and then act on each? I've looked through the functions and nothing > seems > > equivalent to unix's "cut" command for pulling a field based on a > delimiter, > > nor a way to keep repeating an action until the field is processed. I > am > > strongly considering just abandoning the Field 112 anyway, and using > an > > entire form just for storing the UserID to Parent. Then at least I > can just > > loop over that form and forget about the field splitting... > > > > Thanks for any ideas. > > > > Brien > > > > __Platinum Sponsor: www.rmsportal.com ARSlist: "Where the Answers Are" > > html___ > > > ___ > UNSUBSCRIBE or access ARSlist Archives at www.arslist.org > Platinum Sponsor: www.rmsportal.com ARSlist: "Where the Answers Are" > > > ___ > UNSUBSCRIBE or access ARSlist Archives at www.arslist.org > Platinum Sponsor: www.rmsportal.com ARSlist: "Where the Answers Are" > ___ UNSUBSCRIBE or access ARSlist Archives at www.arslist.org Platinum Sponsor: www.rmsportal.com ARSlist: "Where the Answers Are"
Re: split a field and loop on each piece
Its wierd that by design you are allowed spaces in a Group Name isn't it? I generally avoid spaces in mine and use special characters like : or - instead of a space. Remedy used to do the same with the older versions of the ITSM applications, e.g. APP:Administrator, APP:Support.. I'm not sure what advantage they saw in doing away with a naming convention like that.. They could have named 'Incident Master' as 'Incident-Master' as an e.g. The only way I can think of looping on that field and getting what you want to do is to go by what is stored in C112 in that table as it is not the logical name but the Group ID that actually gets stored in there seperated by a semi-colon and a space. That may get you closer to what you want. Joe - Original Message From: Axton <[EMAIL PROTECTED]> To: arslist@ARSLIST.ORG Sent: Monday, September 22, 2008 2:16:28 PM Subject: Re: split a field and loop on each piece I would suggest you forget about parsing the string. The delimitter is a space, and a space can be a character in one of the values. What this means is that once the data is in the field, you can not reliably get it back out of the field. Consider you have the following groups (please excuse the strange names, they are to demonstrate a point): "1 2" "2 3" "3 4" "1" "2" "3" "4" So lets say you put the following groups into the assignee group field: 1, 2, 3, 4 Which looks like this: 1 2 3 4 How do you effectively parse that value into the proper groups? You could get any of the following depending on how you parse it: 1, 2, 3, 4 1 2, 3 4 1, 2 3, 4 1, 2, 3 4 1 2, 3 4 Good luck and may your hair stay attached to your head with the problems you will encounter using this approach. Axton Grams On Mon, Sep 22, 2008 at 1:50 PM, Brien Dieterle <[EMAIL PROTECTED]> wrote: ** Hello list, here's another one for ya. I'm working with field 112 on a form, that may contain one userID, or it might contain a bunch (like 'user1'; 'user2'; 'user3'), etc. I want to loop over all of these records, and then loop on each userID within field 112 (loop in a loop?) and do something with the UserID (In this case, add the user to a group) I've done table looping before, but I have no idea where to begin to loop over a split field. First of all, how would I split this field into pieces (individual userIDs) and then act on each? I've looked through the functions and nothing seems equivalent to unix's "cut" command for pulling a field based on a delimiter, nor a way to keep repeating an action until the field is processed. I am strongly considering just abandoning the Field 112 anyway, and using an entire form just for storing the UserID to Parent. Then at least I can just loop over that form and forget about the field splitting... Thanks for any ideas. Brien ___ UNSUBSCRIBE or access ARSlist Archives at www.arslist.org Platinum Sponsor: www.rmsportal.com ARSlist: "Where the Answers Are"
Re: split a field and loop on each piece
Oh ouch. Well, thanks for waiting until after I typed up a solution to point this out, Axton :) -Gary Opela, Jr. -Original Message- From: Action Request System discussion list(ARSList) [mailto:[EMAIL PROTECTED] On Behalf Of Axton Sent: Monday, September 22, 2008 1:16 PM To: arslist@ARSLIST.ORG Subject: Re: split a field and loop on each piece I would suggest you forget about parsing the string. The delimitter is a space, and a space can be a character in one of the values. What this means is that once the data is in the field, you can not reliably get it back out of the field. Consider you have the following groups (please excuse the strange names, they are to demonstrate a point): "1 2" "2 3" "3 4" "1" "2" "3" "4" So lets say you put the following groups into the assignee group field: 1, 2, 3, 4 Which looks like this: 1 2 3 4 How do you effectively parse that value into the proper groups? You could get any of the following depending on how you parse it: 1, 2, 3, 4 1 2, 3 4 1, 2 3, 4 1, 2, 3 4 1 2, 3 4 Good luck and may your hair stay attached to your head with the problems you will encounter using this approach. Axton Grams On Mon, Sep 22, 2008 at 1:50 PM, Brien Dieterle <[EMAIL PROTECTED]> wrote: > ** > Hello list, here's another one for ya. > > I'm working with field 112 on a form, that may contain one userID, or it > might contain a bunch (like 'user1'; 'user2'; 'user3'), etc. > > I want to loop over all of these records, and then loop on each userID > within field 112 (loop in a loop?) and do something with the UserID (In this > case, add the user to a group) > > I've done table looping before, but I have no idea where to begin to loop > over a split field. > > First of all, how would I split this field into pieces (individual userIDs) > and then act on each? I've looked through the functions and nothing seems > equivalent to unix's "cut" command for pulling a field based on a delimiter, > nor a way to keep repeating an action until the field is processed. I am > strongly considering just abandoning the Field 112 anyway, and using an > entire form just for storing the UserID to Parent. Then at least I can just > loop over that form and forget about the field splitting... > > Thanks for any ideas. > > Brien > > __Platinum Sponsor: www.rmsportal.com ARSlist: "Where the Answers Are" > html___ ___ UNSUBSCRIBE or access ARSlist Archives at www.arslist.org Platinum Sponsor: www.rmsportal.com ARSlist: "Where the Answers Are" ___ UNSUBSCRIBE or access ARSlist Archives at www.arslist.org Platinum Sponsor: www.rmsportal.com ARSlist: "Where the Answers Are"
Re: split a field and loop on each piece
Well, too bad we're not using Perl, you could just use the split function to feed the values into an array. But, since we are talking remedy here, try the following: Create a tmpChar, tmpChar2 and tmpInt field. 1) Filter sets tmpChar = $112$ and calls a filter guide. 2) guide calls the following: (guide label start before any filters are added) a) Filter sets 'tmpChar2' = SUBSTR('tmpChar', 0, (STRSTR('tmpChar',";")-1)) b) Filter sets 'tmpChar' = SUBSTR('tmpChar', (STRSTR('tmpChar',";")+1)) c) Filter will take action on tmpChar2, such as doing your push to the user form to add a group to the user d) Filter will go to guide label start if 'tmpChar' != $NULL$ AND 'tmpChar' != ";" So, let's say you have the following: $112$ = bob;tom;sue; 1) Filter sets tmpChar = "bob;tom;sue; ->> go to guide label start a) Filter sets 'tmpChar2' = bob b) Filter sets 'tmpChar' = tom;sue; c) Filter will take action on tmpChar2, doing a push to user where 'Login Name' = "bob" d) Since 'tmpChar' = tom;sue; you will go to guide label start ->> go to guide label start a) Filter sets 'tmpChar2' = tom b) filter sets 'tmpChar' = sue; c) perform action on tom d) go to guide label ->> go to guide label start a) Filter sets 'tmpChar2' = sue b) Filter sets 'tmpChar' = $NULL$ (or "") c) perform action on sue d) do nothing (exit guide by default) because 'tmpChar' = $NULL$' I think this should work for you, and it should involve one filter, a guide, and then a) and b) can both be the same filter, but separate actions, and then c) and d) will each have to be their own filter, so you are looking at four filters and a filter guide. Let me know if this just doesn't quite work. Thanks, Gary Opela, Jr. -Original Message- From: Action Request System discussion list(ARSList) [mailto:[EMAIL PROTECTED] On Behalf Of Brien Dieterle Sent: Monday, September 22, 2008 12:51 PM To: arslist@ARSLIST.ORG Subject: split a field and loop on each piece ** Hello list, here's another one for ya. I'm working with field 112 on a form, that may contain one userID, or it might contain a bunch (like 'user1'; 'user2'; 'user3'), etc. I want to loop over all of these records, and then loop on each userID within field 112 (loop in a loop?) and do something with the UserID (In this case, add the user to a group) I've done table looping before, but I have no idea where to begin to loop over a split field. First of all, how would I split this field into pieces (individual userIDs) and then act on each? I've looked through the functions and nothing seems equivalent to unix's "cut" command for pulling a field based on a delimiter, nor a way to keep repeating an action until the field is processed. I am strongly considering just abandoning the Field 112 anyway, and using an entire form just for storing the UserID to Parent. Then at least I can just loop over that form and forget about the field splitting... Thanks for any ideas. Brien __Platinum Sponsor: www.rmsportal.com ARSlist: "Where the Answers Are" html___ ___ UNSUBSCRIBE or access ARSlist Archives at www.arslist.org Platinum Sponsor: www.rmsportal.com ARSlist: "Where the Answers Are"
Re: split a field and loop on each piece
Brien Not sure what you are doing and there may be better ways of achieving the desired functionality, however you need to look at the following functions to achieve what you ask. StrStr - Finds string/char in a string Substr - Returns a string from a string From: Action Request System discussion list(ARSList) [mailto:[EMAIL PROTECTED] On Behalf Of Brien Dieterle Sent: 22 September 2008 18:51 To: arslist@ARSLIST.ORG Subject: split a field and loop on each piece ** Hello list, here's another one for ya. I'm working with field 112 on a form, that may contain one userID, or it might contain a bunch (like 'user1'; 'user2'; 'user3'), etc. I want to loop over all of these records, and then loop on each userID within field 112 (loop in a loop?) and do something with the UserID (In this case, add the user to a group) I've done table looping before, but I have no idea where to begin to loop over a split field. First of all, how would I split this field into pieces (individual userIDs) and then act on each? I've looked through the functions and nothing seems equivalent to unix's "cut" command for pulling a field based on a delimiter, nor a way to keep repeating an action until the field is processed. I am strongly considering just abandoning the Field 112 anyway, and using an entire form just for storing the UserID to Parent. Then at least I can just loop over that form and forget about the field splitting... Thanks for any ideas. Brien __Platinum Sponsor: www.rmsportal.com ARSlist: "Where the Answers Are" html___ ___ UNSUBSCRIBE or access ARSlist Archives at www.arslist.org Platinum Sponsor: www.rmsportal.com ARSlist: "Where the Answers Are"
Re: split a field and loop on each piece
I would suggest you forget about parsing the string. The delimitter is a space, and a space can be a character in one of the values. What this means is that once the data is in the field, you can not reliably get it back out of the field. Consider you have the following groups (please excuse the strange names, they are to demonstrate a point): "1 2" "2 3" "3 4" "1" "2" "3" "4" So lets say you put the following groups into the assignee group field: 1, 2, 3, 4 Which looks like this: 1 2 3 4 How do you effectively parse that value into the proper groups? You could get any of the following depending on how you parse it: 1, 2, 3, 4 1 2, 3 4 1, 2 3, 4 1, 2, 3 4 1 2, 3 4 Good luck and may your hair stay attached to your head with the problems you will encounter using this approach. Axton Grams On Mon, Sep 22, 2008 at 1:50 PM, Brien Dieterle <[EMAIL PROTECTED]> wrote: > ** > Hello list, here's another one for ya. > > I'm working with field 112 on a form, that may contain one userID, or it > might contain a bunch (like 'user1'; 'user2'; 'user3'), etc. > > I want to loop over all of these records, and then loop on each userID > within field 112 (loop in a loop?) and do something with the UserID (In this > case, add the user to a group) > > I've done table looping before, but I have no idea where to begin to loop > over a split field. > > First of all, how would I split this field into pieces (individual userIDs) > and then act on each? I've looked through the functions and nothing seems > equivalent to unix's "cut" command for pulling a field based on a delimiter, > nor a way to keep repeating an action until the field is processed. I am > strongly considering just abandoning the Field 112 anyway, and using an > entire form just for storing the UserID to Parent. Then at least I can just > loop over that form and forget about the field splitting... > > Thanks for any ideas. > > Brien > > __Platinum Sponsor: www.rmsportal.com ARSlist: "Where the Answers Are" > html___ ___ UNSUBSCRIBE or access ARSlist Archives at www.arslist.org Platinum Sponsor: www.rmsportal.com ARSlist: "Where the Answers Are"
split a field and loop on each piece
Hello list, here's another one for ya. I'm working with field 112 on a form, that may contain one userID, or it might contain a bunch (like 'user1'; 'user2'; 'user3'), etc. I want to loop over all of these records, and then loop on each userID within field 112 (loop in a loop?) and do something with the UserID (In this case, add the user to a group) I've done table looping before, but I have no idea where to begin to loop over a split field. First of all, how would I split this field into pieces (individual userIDs) and then act on each? I've looked through the functions and nothing seems equivalent to unix's "cut" command for pulling a field based on a delimiter, nor a way to keep repeating an action until the field is processed. I am strongly considering just abandoning the Field 112 anyway, and using an entire form just for storing the UserID to Parent. Then at least I can just loop over that form and forget about the field splitting... Thanks for any ideas. Brien ___ UNSUBSCRIBE or access ARSlist Archives at www.arslist.org Platinum Sponsor: www.rmsportal.com ARSlist: "Where the Answers Are"