@Duga Two questions: first, why merge before the formatting is fixed? Socond, do we also want the component type on the location group header? To the second, I never got any answer and it is not included in the PR.
> I've not had a chance yet to fully review this PR, but it seems that the import assumes that certain component types must always provide binary files alongside the primary (declarations and code) file. This is not the case - binary files will only be present where there is a need for them based on the properties of their child controls. If a component does not have at least one child control which has a binary-content property set, a binary file will not be produced on export and will not be i
@M.Doerner I can double-check, but I would definitely assume not, presumably any control which cannot serialise to text will emit binary. I vaguely recall reading an article about how component serialisation works, perhaps in the VBA SDK. Will try to dig out a link.
> The assumption is not that some components always need binary files (except for user forms, which always have a binary, even when empty). The assumption is that there are components that might need binary files. These types are excluded from update unless an implementation of IRequiredBinaryFileExtractor exists that supports them.
@MathieuGuindon I feel for you too bro! We do encourage positive psychological safety in programming practices culture you know. :) so thumbs up as @M.Doerner use mediation for 5 to 20 mins to relax and unwind. Perhaps under the Getting things done philosophy of David Allen’s system shift one task of RD a week instead of several in one day. Take care.
@MathieuGuindon you're becoming a manager here, you know? From someone struggling with that beast since about a decade: the trick is to celebrate the small victories and forgive yourself for things beyond your control
> Build .4993: Works Build .5033: Works Build .5081 (got the "new pre-release available" pop-up, that surprised me!): Works Build .5094: Works Build .5096: Works Build .5096: Works Build .5097: Works (and found new issues Yay! or is that Boo... ?) Build .5105: Works (and I went back to the previously grouped list of issues?) Build .5115: Works Build .5130: Works (that "new pre-release" pop up is gettin' kinda naggy at this point... :/) Build .5131: Works Build .5132: BROKEN Build .51
@Duga I think the issue was in .5096 and was resolved in .5097 "Fix untyped function inspection". So, weird as it looked, I believe all is good! (not sure where to look in the release notes to see what PR(s) that build included and what issues they fixed, but I do remember something about that now that I've dug into it.)
keeps screen grabs handy for a bit, just in case...
> Probably, the following event handler is to blame. https://github.com/glowingrunes/Rubberduck/blob/302122d512cbfd7e1f4491f77ddda1cba9f3f038/Rubberduck.Core/UI/Inspections/InspectionResultsControl.xaml.cs#L15
It was introduces to avoid that the event reaches the scroll viewer. However, that seems to also have swallowed the focus change.
I don't think RD has anything to do with the crash. When Excel comes back up, it gives me the "you just double-clicked excel.exe, what would you like to do now" start screen", not the "hey I puked on you, here are the remains of all the files you had open when I did". So I think Excel has pretty well shut down, it just can't fully take care of itself...
@M.Doerner Ugh... I was looking at this: Enabled horizontal scrollbar in the Code Inspection window. Closes #5…, not this: Merge pull request #5231 from glowingrunes/5135-HorizontalScrollBarCodeInspection. Forest/trees, needs moar coffee, #ReadingFail, etc., etc., etc.
@M.Doerner that's my point, though. Previously, when excel crashed with files open, it would relaunch itself and reopen the files that were open when it crashed. I presume the behavior is the same now, and it's not reopening files for me, so I'm assuming (with all inherent danger) that there were no files left open when it managed to die.
I'm also presuming/assuming/hoping that RD has managed to completely exit by that point, so I'm not pointing a finger at/blaming the duck at all for these crashes.
Of course, I've rarely got Excel open without the duck open, so it'll be hard (for me, at least) to prove the negative.
@Duga this might end up beyond the PR's scope but the JunkDrawer does not seem that it'll go away anytime soon. We may need to clearly define the project's scope, especially WRT extensions which can devolve into unfun game of hide-and-seek to find the extension's namespace.
After previous discussions, it seems the best way to launch an SSIS package from my VBA code is to call a stored proc that will launch the package. I'm good with that. Any tips on how to check on the results of the SSIS package so I can log the results?
ah, gotcha. I was looking for a way to query the results & pass it back as the output of the SP, then logging it with my VBA. I guess if I can log it in a logging table then read that back, that'll work, too.
@MathieuGuindon i'm thinking that for the function array post it's not replicatable for SO due to possible specifics on a single machine... goign to vote to close as such, but still not sure
In my actual code I am simply using a function to return column code by passing a column number. So, if I pass 24, it will return X, but if I pass 27 it should return AA. Till few days back the code 'was working fine' on my current PC and 'it's working fine even now on my other PC'. However now on my current PC, if I pass 24, I get X, but if I pass 27, I don't get any value. The sample code was to simplify the problem for you guys. I hope I am making sense here. — Pulkit Jain4 mins ago
the function OP is showing us isn't using the num parameter, so whatever you pass the function, shouldn't make any difference whatsoever
i told him "@PulkitJain In reading the other comments, and specifically seeing John Coleman's comments on possible corruption or even a phantom bug, I would wonder if on a rudimentary point, if you were to fully declare and test the fully-declared code on the specific computer, would it run? Whether or not it runs does not determine why the current issue is happening, but would at least give a path forward"
similar to your point, we're not seeing the actual code, and thus can only guess... at the code changes AND the system settings/parameters
also, there're better choices for returning a column label from index
i'll stick with the vote to close as typo/not reproducible... the simplest solution is to declare all variables, which should correct your pain points... i think you and i both hit on that in the comments to the main post
@MathieuGuindon If it helps you keep your sanity slip all the way down to where plebs like me are. You'll have company that way. It's lonely at the top from what I hear.
@IvenBach I notice less upvoting on certain tags... i believe someone was explaining "if it's excel or VBA tagged, [the answer] should already be out there... you're just helping someone see it how they want to"
there are some places that will not allow you to have any additional IDE tools/addons, so you're stuck with what microsoft provided... even with that in mind, i feel that the majority of posters are first time folks who have improperly posed inquiries, or really do need hand holding, which SO is the inappropriate forum. hell, look at my first few questions ever asked (which i think you answered a few of them) where i just don't know the correct language.
from that perspective, SO is a learning site, like w3school is for html, just with fewer gross perspectives, inherently making it harder for a first timer to learn
sorry, i'm a block of text kind of person... my wife hates texting with me
@Cyril it is, and that's sad because it means it failed its mission, and is basically becoming just another Facebook Excel/VBA group page, or subreddit, or Quora ...except with half-decent answerable questions at least half the time.
"online help" forums kill me. every single one of them is full of "I need XYZ, can someone do it for me because I'm not willing to make the effort to learn anything to do it myself"
at this point I don't know/care what the mission is... I'm just answering questions where I can see an OP that wants to learn stuff. If the person just wants quick copy-pasta crap code they won't understand, I'm leaving it to others.
let me see if i can find teh post on SE I made about it, but I was under the impression that 2015 was the "birth" and the fact that it was under development was specifically why mods refused to put it as a "site more appropriate" in the reasons to close section, as of last year
before that, a SO->CR migration path was deemed inappropriate because the site was beta. since then it's still inappropriate, but only because SO people have no idea what's on-topic on CR and if there was a direct migration path we'd end up with tons of crap and rejected migrations on CR
@MathieuGuindon to outpedant a bit here: There was an intentional technical limitation in place to disallow migration paths from graduated to beta sites.
It used to be that the list of migration targets for users was automatically filled with the top migration targets
...well, sorry if my question put you all into a rabbit hole... the bastard-code redim arr(x) appears to be a mess in general, even without the RD references
@Cyril yeah.. the thing is, if it's legal VBA code to treat ReDim statements as basically "executable declarations", then RD has to treat them as such, too
Version 2.4.1.40892 OS: Microsoft Windows NT 10.0.17763.0, x64 Host Product: Microsoft Office x64 Host Version: 16.0.12130.20272 Host Executable: EXCEL.EXE
**Description**
Rubberduck is now handling the undeclared `Redim` well, thanks to new PRs merged in last few months that enhances the resolver's capabilities for handling this.
However, there seems to be some rough edges around how it is resolved and that also seems to affects the rename re
@FreeMan i mean... internet points rule the world; it's like a social-rating system... just hope i can still get a flight if my number isn't high enough
if you don't like the vanilla SQL editor for Access queries, you could look at this cheapo tool. However, that can complicate import/export because metadata are stored somewhere else
If you always insert the sql directly, you get a somewhat sensible diff. If you always use the designer, it also makes sense. Just mixing them produces a stupid diff.
If the query comes from the designer, you get something like the following.
Begin InputTables
Name ="SystemInfo"
Name ="SignatureInfo"
Name ="SignatureDiscoveries"
End
Begin OutputColumns
Expression ="SystemInfo.Region"
Expression ="SystemInfo.Constellation"
Expression ="SystemInfo.System"
Expression ="SignatureInfo.Signature"
Expression ="SignatureInfo.Type"
Expression ="SignatureInfo.Site"
End
Begin Joins
LeftTable ="SignatureInfo"
RightTable ="SignatureDiscoveries"
Expression ="SignatureInfo.Signature = SignatureDiscoveries.Signature"
If you go to the SQL view and format a bit, this changes to the following.
holy carp, Batman! That's a lot of files in use elsewhere!
that's pretty much everything I've got open.
Excel & Word, but not Access, Notepad++, git bash and Postman. Those are the only things I have open that Tortise doesn't want to git its webby little feet into!
Now that I finally have time to look back at this code I wrote over a year ago. I need help with streamlining the code I have written. I had to write a significant amount of IF statements to get this to work, but im thinking using functions anbd maybe dictionaries would be a much more efficient...
It isnt the only procedure in the module, but the other procedures are just from a UserForm that is used to pass certain information to a hidden sheet. I can post the other procedures, but I didnt think they were of relevance to this. I wish i could use RubberDuck on my work computer, but alas the higher ups said no. — Zack E7 mins ago
I just recommended you to two programmers in Safran, which is really big company for building Airbusses. And they have very, very strict rules for programs. They just installed it like a user and... Why would that be a problem :-)
@FreeMan i haven't used duckduckgo since i had opera 9... at this point, i forget people don't use chrome with default google, though I have extensions to limit what can show up (if it's a promoted/advertised site it's blocked)
@MathieuGuindon I placed all the code into one block. This was one of my first attempts at VBA, so i didnt place the Option Explicit at the top like I do with all my other code now. I will add it in. Thanks for the reminder. Unfortunately, in regards to RubberDuck I do need admin rights to download anything on my work computer :( — Zack E53 secs ago
i downloaded it in the hour window i was permitted and gave a copy to our local IT guys since a few of them use it, and i've previously gotten others to use it due to the language identifiers
@this I can understand that kind of policy if your employer is, IDK, some government agency. But if your company sells t-shirts, that kind of policy is nuts.
@this i've been at those before; the global IT monitors what is installed on everyone's computers and if it's not permitted they straight up uninstall things and you get a reprimand letter. if you get a second letter, fired on the spot
and my favorite thing that company did... local IT was redacted the "privilege" of having access to power query by global IT so if they want to put any pushes or anything, they have to put in a ticket to IT to get escalated
GDPR is interesting in general. supposed to provide more rites but what i've historically seen is companies don't hcnage, they just use jargon and layers of pages to hide info to still make "accessible" the information. as an american who regularly uses EU regulated sites, it's a weird thing to see... might be normal to the rest of the world
kind of like how 73% of houses in my development fly at least 1 flag, which is seen as weird to a lot of people (particularly my german friends)
sorry for the tangent... i get the USB thing. i don't think i've seen it that far, where they aren't recognized, but it makes sense
@Cyril meh... google gets more than enough of my life via my Android phone. They don't need all my search queries, too. And I'm migrating away from @gmail to @protonmail.com
@this You can get canned for it here. But we're a healthcare provider and HIPPA regs around PII/PHI are somewhat... strict. Violations can be really bad for the company.
@Cyril No. “Government’s view of the economy could be summed up in a few short phrases: If it moves, tax it. If it keeps moving, regulate it. And if it stops moving, subsidize it.”
Now that you mention it... I worked at a place once... They didn't have a lot for me to do, unfortunately, so I got bored. I got my wrist slapped for some general web-browsing, so I set up an SSH server at home and had a portable SSH client on my very first ever USB drive (all 32MB of it!!) and did my browsing via a very early portable Firefox release (also on said drive). They seemed to like that even less. Put a big target on my back come layoff time (due to the lack of work...).
@FreeMan just teamviewer or logmein to your home computer and play games...
had a colleague show me that once; logmein was paid for by the company, so he'd set-up meetings with himself at home and get the instant screen, rather than the 3-5 sec delay
hm, the VBE might silently drop attributes when refactoring; that is part of the benefit of using annotations - should we try to recover them automatically or it's something else?
I think to avoid the drop on rename, we will have to use an attributes pass rename and actually deal with the attribute, too.
The most annoying situation would actually be a member attribute on an interface member implementation.
That is especially complicated since renaming the interface will execute the rename under parser suspension, but an attributes rewrite also suspends the parser, either leading to an exception or a deadlock.
> For some time now, we recover member attributes on rewrites, which would otherwise be dropped by the VBE. However, this recovery has one blind spot: members getting renamed in the rewrite.
The problem is that the members the attributes belong to are identified by the component they are contained in and their name. If that name changes, we cannot recover them with the current approach. Even resorting to an attributes pass rewrite will not help here since the actual attribute has to be adapte
This PR aims to fix the issues I introduced when I added references for array accesses and default member accesses.
Currently, the rename refactoring is covered and the quick fixes are shortly reviewed. In addition, find all references no longer reports the array access references.
I still have to go over the remaining refactorings, which might pose some problems.