Jump to content
Macro Express Forums

Rustywinger

Members
  • Posts

    120
  • Joined

  • Last visited

Everything posted by Rustywinger

  1. Can one of you enlightened brains help this poor guy figure out date math, such as a week that spans month ends/beginnings? Say I have a date 2022-05-05 and want to subtract a week, how would I account for the difference in month end days (28,30,31)? Is there an elegant solution or do I have to add more arguments such as listing the months that have <X days and subtract from 31 as necessary? Thanks!!! Gord
  2. I tried searching for "Mouse Move" but can't find a thing, so sorry if this is an oft-requested issue. I am trying to move my cursor from one end of screen to another, on the same X-Axis. However, I can't understand the logic behind this function. I set X and Y integer variables from mouse position. Then I add a number to X axis integer with modify integer, then supply both results into the X and Y fields of Mouse Move. However, the result varies depending on where the mouse is, ie-further away from top left screen, further the mouse moves. I even tried feeding the mouse move function with unedited mouse X/Y parameters... and it STILL moves somewhere else from where it was. I'm not a beginner with this stuff. It just seems counter-intuitive the way this is playing out. Thanks for any input!
  3. <VARIABLE SET STRING Option="\x00" Destination="%MyGoal%" Value="4"/> <VARIABLE SET STRING Option="\x01" Destination="%MyGoal%" Mask="FALSE" OnTop="FALSE" Left="Center" Top="Center" Monitor="0"/> <VARIABLE SET STRING Option="\x00" Destination="Target" Value="1,2,3,4,5,6,7,8"/> <SPLIT STRING Source="%Target%" SplitChar="," Dest="%TVar%" Index="1"/> <GET ARRAY LENGTH Array="%TVar%" Dest="%TVarL%"/> <REPEAT START Start="1" Step="1" Count="%TVarL%" Save="TRUE" Variable="%CNT%"/> <IF VARIABLE Variable="%TVar[%CNT%]%" Condition="\x00" Value="%MyGoal%" IgnoreCase="FALSE"/> <VARIABLE SET BOOL Destination="%MyGoalReached%" Command="263" Value="TRUE"/> <END IF/> <END REPEAT/> <TEXT BOX DISPLAY Content="{\\rtf1\\ansi\\ansicpg1252\\deff0\\deflang1033{\\fonttbl{\\f0\\fnil\\fcharset0 Tahoma;}{\\f1\\fnil Tahoma;}}\r\n\\viewkind4\\uc1\\pard\\f0\\fs16 My Goal Reached = %MyGoalReached%\\f1 \r\n\\par }\r\n" Left="Center" Top="Center" Width="278" Height="200" Monitor="0" OnTop="FALSE" Keep_Focus="TRUE" Mode="\x00" Delay="0"/> The above is fairly self explanatory when put into Macro Express, hope this helps! It requires you create an array of your searchable data, but that is easy enough to do.
  4. Hi, Kevin, looking at it now, thanks! :-) In the meantime, I just can't understand why this isn't a simple thing... I've seen things far more complex made straightforward by MEP!
  5. Sorry if this has been covered, I searched to the extent of my patience and can't seem to find a simple, straightforward solution. I need to set a date time variable from a 'YYYYMMDD' text string in order to increment the days and then convert back to a text string. Thanks in advance for gracing me with your expertise!
  6. Solution needed- two monitors, ME only changes resolution on one. How to make it change resolution of the other? Background: SO I have two monitors, main one is set up with a KVM switch and the other is plugged into a second computer. The main display is a 1280x1024 res and is the one attached to the switch. The second res is a 1440x900. I switch back and forth between two computers to work on tasks. One of these tasks has a window that cannot dynamically redraw based on monitor resolution, so parts of the interface are out of viewable range. I want to be able to temporarily change the resolution of the secondary monitor to accommodate the program running on it. Running the MEP function for monitor resolution only seems to work on the main monitor and leaves the second one unaffected. Any suggestions on how to get this working? Many thanks!
  7. Certainly not the Law of Benevolent Programming Automation. ;-) The indictment is fairly specific: FTA: "Lowson pleaded not guilty to charges of conspiracy, wire fraud and computer fraud. His lawyer, Mark Rush, said Wiseguy Tickets simply devised an ingenious way to buy tickets for brokers, who resold them to fans. But authorities say Lowson and his three co-defendants committed fraud by using 100,000 internet protocol addresses, a variety of company names, hundreds of e-mails and a web of credit card numbers to hide the fact that all the tickets were being bought by a single company. According to the indictment, they also committed a variety of computer crimes by using an army of online drones to circumvent security systems and enter ticket-selling websites ahead of fans. When Ticketmaster and other companies beefed up security, Wiseguy devised new ways to break through, authorities said." A much more detailed story on the charges here: http://news.yahoo.com/s/usnw/20100301/pl_usnw/DC62572
  8. I read about that a few days ago, the defense lawyer had a few choice metaphors and analogies to describe his clients: 1- "All my client is guilty of is building a better mousetrap" 2- "This is no different than the days of having all your friends camp overnight to buy the tickets". Not justifying it though, but I wonder how this case will end.
  9. I run a lot of macros consequently and the individual macros dynamically select which macro to run next based on data they collect. It helps me to know which one is running so I do the following: At the beginning of all my macros, I have entered the following: <VARIABLE SET FROM MISC Destination="%CurrentMacro%" Value="Name of Current Macro"/> My method usually has an updating dialog box tracking what is running which usually updates right after the above Variable gets set, but it might update at various keypoints within the macro. Expanding on that, I suppose you could bookend %CurrentMacro% with timestamps and append it to a text, etc, just a random thought.
  10. Oddly enough, a restart fixed the boolean issue. Yes, "the problem mysteriously disappeared" is an algorithm I am somewhat familiar with! I had this issue in a much larger set of macros (read:huge) and there were so many things to troubleshoot I spent most of the day on it before deciding to do the two-small macros test approach from my second post. Without fail, the last dialog box would return FALSE, exactly what it was doing in the large macro. So a restart apparently has this working now, resulting in TRUE.
  11. Looking at this more, it seems that my Boolean variable is not surviving a "Save all variables" in one macro and "restore all variables" in another. Example: at the end of a Macro named start, I set a Boolean named %ZZZZ% to TRUE, then "Macro Run" to macro2, which happens to start with "restore all variables". In macro2 %ZZZZ% has actually FLIPPED from True to False with no variable modification logic present. The two macros in separate boxes below demonstrate this <VARIABLE SET BOOL Destination="%ZZZZ%" Command="263" Value="TRUE"/> <TEXT BOX DISPLAY Title="Start Macro, after setting to True" Content="{\\rtf1\\ansi\\ansicpg1252\\deff0\\deflang1033{\\fonttbl{\\f0\\fnil\\fcharset0 Tahoma;}{\\f1\\fnil Tahoma;}}\r\n\\viewkind4\\uc1\\pard\\f0\\fs16 %ZZZZ%\\f1 \r\n\\par }\r\n" Left="Center" Top="Center" Width="278" Height="200" Monitor="0" OnTop="FALSE" Keep_Focus="TRUE" Mode="\x00" Delay="0"/> <VARIABLE SAVE Option="\x00"/> <TEXT BOX DISPLAY Title="Start Macro, after Save All variables" Content="{\\rtf1\\ansi\\ansicpg1252\\deff0\\deflang1033{\\fonttbl{\\f0\\fnil\\fcharset0 Tahoma;}{\\f1\\fnil Tahoma;}}\r\n\\viewkind4\\uc1\\pard\\f0\\fs16 %ZZZZ%\\f1 \r\n\\par }\r\n" Left="Center" Top="Center" Width="278" Height="200" Monitor="0" OnTop="FALSE" Keep_Focus="TRUE" Mode="\x00" Delay="0"/> <MACRO RUN Use_ID="FALSE" Name="end" ID="-1" Wait="TRUE"/> <TEXT BOX DISPLAY Title="Second macro, before variable restore" Content="{\\rtf1\\ansi\\ansicpg1252\\deff0\\deflang1033{\\fonttbl{\\f0\\fnil\\fcharset0 Tahoma;}{\\f1\\fnil Tahoma;}}\r\n\\viewkind4\\uc1\\pard\\f0\\fs16 %ZZZZ%\\f1 \r\n\\par }\r\n" Left="Center" Top="Center" Width="278" Height="200" Monitor="0" OnTop="FALSE" Keep_Focus="TRUE" Mode="\x00" Delay="0"/> <VARIABLE RESTORE Option="\x00"/> <TEXT BOX DISPLAY Title="Second Macro after Variable restore" Content="{\\rtf1\\ansi\\ansicpg1252\\deff0\\deflang1033{\\fonttbl{\\f0\\fnil\\fcharset0 Tahoma;}{\\f1\\fnil Tahoma;}}\r\n\\viewkind4\\uc1\\pard\\f0\\fs16 %ZZZZ%\\f1 \r\n\\par }\r\n" Left="Center" Top="Center" Width="278" Height="200" Monitor="0" OnTop="FALSE" Keep_Focus="TRUE" Mode="\x00" Delay="0"/>
  12. I have been getting these errors for undefined variable or variable of the wrong type. They are either boolean or control vars. In one case, I had named a control variable "%control2%" and MEP would never let the macro go past that line without letting me know it was either undefined or the wrong type. I checked in the variable editor to make sure it was a control variable and it was. I changed the name to "%C[2]%" and it worked just fine after that. Now I am starting to have the same issue with some named boolean variables. Is anyone else having this issue? Thanks!
  13. Since this is a general version update topic, I thought I would ask for help locating something mentioned in the release notes: "Renamed the 'Wait [ ] milliseconds between clipboard commands' option to reflect the change in how clipboard commands now work." Where does one find this in MEP? Thanks, rock solid so far!
  14. ?? Now this is confusing... I could have sworn for a variable value created in one macro to be available to another, it needed to be saved by one (by whatever your favorite means) and loaded by macros used later. As far as I know, ME variables do not stick around once a macro stops without saving them. Or perhaps you are talking about something else?
  15. Oh relax! For the most part the fine people at Insight have done this very well, I have had no issues at all with the conversion itself of the legacy files. The issues I did have were with macro timing, not variables. There was also the speed of loading the saved variables, which 4.1.1.1 appears to have addressed well. And then there is the new issue of the crash when restoring vars that have not previously been saved. But an easy workaround fixes that for me. All in all, this has worked very well considering the huge amount of Macros I was able to simply convert and run in the testing environment. I have not yet deployed anything and likely won't for awhile yet as the processes our offices use work just fine for now in ME3. I'm really not in a hurry to have an angry mob after me! :-)
  16. Bob, I was kidding... Like I could be considered advanced. There are actually two advanced: Advanced SNAFU fixer Advanced SNAFU creator I generally fit in the bottom one. Eventually, I will be an Expert Snafu creator, and then who knows, perhaps I will be stupid enough to become a Master. Where is your god now? ;-)
  17. And I'm a bit miffed nobody's throwing me a party for becoming "Advanced" lol
  18. Well, I don't speak for others, but I track what all the variables contain (remember this was all designed in ME3) in a reference spreadsheet. There is a mix of variables that are always used for the same purpose and a mix of variables that are random from macro to macro. A variable save can contain X active items which can be used by my other macros at any time. They are all designed to work within the parameters of the reference spreadsheet. For example, in addition to actual integer content, I use the N variables as flags that allow the current macro to know what's up. I use the T values to share data strings that are common between tasks. The process that takes up the bulk of my macros could accurately be described as brackets, there is one set of macros that begin the process, set conditions and flags based on dynamic interaction, then stops entirely as the data entry clerk runs utility macros based on the task at hand. When done, the closing bracket macro cleans everything up, saving this, filing that, recording those. There are hundreds of automatic tasks involved in the brackets as well as the 'semi-automatic' tasks between which all draw from the current pool of data saved in the variables. Maybe it's rudimentary (or Rube-imentary) and lacking in a turbo, but it's all working just fine for us.
  19. I wouldn't use hammer and screw as an analogy, at most it is using the incorrect size screwdriver for the screw head. This method works and will work flawlessly (without damaging the wood even!) for what it is being used for, simply passing data from one macro instance to another. I agree that writing to files is a far more stable way to be doing this and this is what I do in the newer macros I write, however this issue is going to come up again and again as long as people have substantial libraries of legacy macros that cannot be easily updated. Also, I don't think there is anything stopping the good folks at Insight from simply converting the process from dynamic to static. Seriously, that would have to be a dead easy modification to make to the process.
  20. Rub it in, old man! ;-) lol I actually fixed it by... saving variables before restoring them. Most macros already end with a save so it is just a redundant command. And feel free to report this bug. I don't care to look into it now that I have things working... relatively!
  21. Bob, I am in the exact same boat. I have hundreds of Macros running Save and Restore Vars. Currently they are all in ME3 environment being used among the front line workers. I too, would love to get the peripherals control added to the equation to strengthen the effectiveness of the macros, but the delay involved in loading the vars is simply unacceptable. I really don't see why I should make the formidable investment of rewriting all my macros to accommodate what is obviously a programming flaw which had no adverse effects in previous versions of ME, in fact earlier versions of MEP did not have this issue. I should just be able to convert my legacy files, add in the new functionality (KB/Mouse locks) and go about my business.
  22. So I engage a Macro that has worked flawlessly in all versions of MEP prior to 4.1.1.1 I assume the variables are empty at this point, since I just started MEP The first command in the first macro I use is to restore variables. Crash-a-roonie. I turned off the restore command, the macro then works. However, the macro needs information saved from previous executions to work properly. I experimented with the restore and concluded that it is only crashing when text variables are being loaded. It will run if it just loads integers. I further experimented by creating a macro with only 'Restore all variables" in it. Crash-a-roonie. I added a "Save all variables" to run before restoring, and that worked. So I guess that if the first command MEP executes in a session is a restore before anything has been saved, it crashes. Now, I know that save/restore variables isn't the best way to be doing this, etc etc, but this has worked flawlessly before and I really don't want to have to rewrite all my macros at this point in time for alternative methods to a function that clearly should be working.
  23. I am having the exact same issue in the 4.1.0.1 version. There is a 5 second delay in one specific macro that loads a bunch of stored variables. Others macros aren't having the issues though I have just installed it and testing has been limited.
  24. Well I found the issue last week, it was a number of factors combining into one nice little mess that made this simple little thing into a big headache. I can't even remember the specifics but it was so far removed from the thread issue it's not worth reporting on. So everything works and the macro is happily discriminating against the exclusion files with absolute prejudice! Thanks for the replies, Paul and Cory!
  25. I have a TSV text file that contains about 2000 lines of serial numbers that should be excluded from a larger production process if they match the active search string. So I load this text file into VAR_A and then during every production loop I test to see if VAR_A contains VAR_B, which is the active serial number being handled. The result is always false and it is driving me nuts. I put both variables into a dialog box at various stages of this process just so I could see that they are set properly and they are. Here is the abridged code in question: <VARIABLE SET STRING Option="\x03" Destination="%ExclusionNums%" Filename="ExclusionNums.txt"/> <IF VARIABLE Variable="%ExclusionFileTrue%" Condition="\x00" Value="True" IgnoreCase="TRUE"/> <IF VARIABLE Variable="%ExclusionNums%" Condition="\x07" Value="%ActiveNum%" IgnoreCase="TRUE"/> <VARIABLE SET STRING Option="\x00" Destination="%StatusUpdate%" Value="%RecordStatus%"/> <END IF/> <END IF/> As I mentioned, VAR_A is going to contain about 2000 lines with a single serial number on each line. The argument above checks to see whether the file as a whole contains a unique 10-digit string and when I take both into a text file in windows and run a search on the active number, it works every time. But the macro search never returns true. I have been working on this seemingly ridicuously simple task for a day and at my wit's end!!! Thanks for any help!
×
×
  • Create New...