Been awhile since my last DF-related visit.
One idea that comes to mind is a supply-filtration plant. Actually it's an old idea I had that I'm re-introducing... again.
Have the standard processing unit made (3x3 grid of 5x5 stockpiles, each assigned with 3 wheelbarrows each for rapid-collecting (about 24 dwarves dedicated to collecting and sorting (27 if the trade depot is also a collection grid))), at the end of each end of the grid, have a collector for a broad level of sorting (assigned to sort all 8/9 stockpiles central, and only those 8/9, and nothing else. The inner 8/9 collect everything regardless (except for the paths that lead 1-way to the end result), unless otherwise noted): At the most basic level, like item types (Furniture from tools, armors and weapons and ammo separated, bars from ores and whole stones, wood blocks from logs, and so on...). Using the secondary to filter out quality or color, or material type, species of leather, and so forth (even sort out food and drinks). Everything will go somewhere, and everyone will know where they are and belong. Makes keeping track of everything in the fort as simple as the end result of a bookkeeper at maximum.
Something like this:
Main Sorter AKA "MASTER-IN" Pile (Clockwork/12-point) Product filter/specified workshop
(Always the closest item to process; colored-item→colored-WS)
+(Others remains in the pre-sort pile (triple minecarted pile before the workshops), and otherwise (specifics) have their own workshop(s) each)
+(Color-coded according to material color or purpose. Replace (or condense) clusterfuck of stones/woods/furniture/finished goods with the pre-sorted single-tile quantum-stockpile. Especially useful for smelting and metalworks, and in some cases obsidian/woodcrafting specifics (right equipment for the right purposes). Pre-sort pile goes to architectural building materials, or otherwise catapult ammo and etc. (archery targets, supports, etc.) if not decided otherwise.)
And secondary filter for workshop specifications, by the material/color to process, and another part of the arrangement set similarly for sorting out quality or material colors of said products (be they furniture or objects/armor/weapons/etc.), and keep it all as some sort of crazy-ass crazy-organized warehouse of goods.
I can imagine the bookkeepers would wet themselves at the level of organization this results in. Plus, now everything is OCD-level sorted out. It'll take a moment to setup, but it'll render micromanaging supplies as trivial.
EDIT:
Keep in mind to make them 1-way sorting paths, unless you want to re-process the items produced until they stop at their designated end-point (though that can auto-process once finished being produced, keeping the workshops empty and efficient). EX: Rock (ANY) → Stone Stockpile (Say, 12 O'Clock) → Stone Sort-out → Stone (Type # = High Value/microcline blue or whatever) → Make mugs out of it → Mugs produced (x3 per-stone) → Stone Mugs returned to main processor → Stone mugs are stored in item stockpile (Say, 3 O'Clock now) → Stone mugs are sorted by quality → 2 stone mugs moved to masterwork and 1 moved to good quality → Items are now awaiting trade in a more convenient location. Mind you, if you're putting them in crates or barrels, you'll have to keep them as regular stockpiles, rather than minecart stockpiles, otherwise they'll be in an endless loop of sorting. And if you ensure them to be 1-way sorting, then an endless sorting won't occur with the finished products you intend to use or trade.
I have yet to devise a way to sort out what was imported to the fort, and what is destined export, since import/export comingling is bound to happen. But you can always take care of that mid-trade.
Reason for the trade depot being central to the main processor is that the most basic items, or however you assigned the clockwork sorting system, is to minimize travel distance for depositing and withdrawing to/from the depot (expect the depot to be empty or filled within a matter of moments or less, instead of a long time, since everything's within a stone's throw from each other (even if some come from all corners of the map. Initially takes an eternity (reason for wheelbarrow redundancy, and having 24-27 of them in the first place. So there's always something reachable by someone, and useless dwarves are always on the move), but once processed, is always within reach to and from depot and otherwise)). Some items are heavy, and are better left in the main collector initial sort-out (like mechanisms and useless/valuable weapon traps)), unless you have reasons for them being more distant (filter-by-quality; crappier = closer to depot, and artifacts are locked up safely in the ass-end of the fortress).
What's nice about this is that cleanup (including refuse; you can even separate bones from fat, fresh corpses for processing from rotten ones for disposal/de-boning. Dwarves from Invaders and wildlife (this can clowncar tiles for condensed graveyarding) is mostly-automatic, and your fortress will be devoid of stray stones (and placed somewhere more access-friendly and pre-sorted; same can be said of specific woods for different purposes (keep the featherwood separate from the acacia; they're on opposite ends of the scale damage-wise if weaponized. Featherwood for training weapons (balsa wood weapons; essentially cardboard tube weapons), and acacia for weapon traps and such (being dense as fuck, and useful for spiked wooden ball traps and such)).
Anything else you haven't sorted out, nor intended to sort-out for your own reasons, are otherwise fair-game for any non-specific purpose (like catapulting, ash-making, ammo-making, decoration, etc.). This is a system I am actually using to make sure the Bloodaxe isn't a patchwork of different woods, like it's predecessor Bloodfist. I intend the Bloodaxe to be prettier in Stonesense, assigning different woods for different scenery items (like one type for walls, and another type for floors; not as noticable in-game, but in visualizers, you can see the difference, and it is definitely worth the extra time taken). This is also what I have been doing as well to ensure primo-material and quality goods for my military to use, as well as my mechanics to apply for weapon traps to hit at their most efficient/hardest.
EDIT EDIT:
Here's some relevant clips of something of the sort in action:
http://mkv25.net/dfma/movie-2472-centralhubinactionminingexpansionandetchttp://mkv25.net/dfma/movie-2475-speedycleanupservicehttp://mkv25.net/dfma/movie-2476-speedycleanupservicepartdeuxAnd a map with it installed already and in-use:
http://mkv25.net/dfma/map-11430-sabreluredEDIT EDIT EDIT:
Another sorting algorithm you can use is really broad to really specific by-needs/wants.
Tier 0-# system: (0 always = MASTER-IN for the initial sort-out to whatever system you devise/choose)
Example:
0→1→2→3→4→5→...
MI→INIT (Initialization/Initial Sorting starting point)→ST1 (Sorting system 1 See below for example of process))→ST2→ST3→...→PRE-PROCESSING→WORSHOP/PROCESSING→FINAL (to re-sort from Tier-0 again for quality control)
More refined example:
MASTER IN-PILE (Tier-0) → MILITARY (Armor, Ammo and Weapons share the same 1st-tier IN-pile) → Usefulness by-type → usefulness by-material → Usefulness by-quality → IF-sorter (Pre-processor, to define whether or not to scrap it, or to keep it. Passable continues to main lockers where that cycle/loop ends, refusals go to recycling MASTER-IN (A different one specifically for wood, stone, and and Mostly metal imports, but includes wood goods for burning (though not logs nor blocks, since they're still useful for other applications, and go to their respective piles (build materials and such))) → Process refuse goods (Rotten corpses, metal ores and damaged armors and etc./goblinites, sub-par crafted goods that aren't good enough to trade even, and so on). Another final destination, if otherwise cannot be recycled, can go into an entirely impassible location, like a bottomless pit, magma pipe, or deep water, or maybe just a one-way pit inaccessible to anyone, unless dumping them.
Because of the looping system already in place, quality control and recycling or trade-offering can be pre-set so you don't need to sweat the small stuff when deciding upon what you need/want and not, and to feel less guilty about processing certain bits of goblinite (or old sets of armor and weapons and such that have crapped-out) too. This should also ease the burden of deciding what materials to use for building and such as well (especially depending on noble requests, like and such, or what megaproject you have in mind that require specific materials, in certain cases).
At different points of the processing, you can also assign workshops to act as middle-point processors as well, like in one of the end-points (though not the end of the cycle, depending on goods being processed) will process the low-end metal goods with a means of ferrying them (or already having a smelter) by the point of the sort-out, if it has no full intention of going through the process again. You can branch it out, and when it's done being recycled, it'll be back into the loop, and it's not as much a walk for anyone hauling to and from it.
This little system (which can become as big as you want) is ludicrously efficient and/or convenient (when complete), despite being the total opposite when setting it up. It'll be time consuming, and DFHack will come handy when naming and assigning stockpiles. As for the minecart sorting system, that'll probably take the most of your time setting up (naming, and debugging), but will be worth it once it starts working like clockwork; especially after refining all the bugs out of the looping systems, if you unintentionally made any.
EDIT EDIT EDIT EDIT:
And one last one, in case the collection grid gets overloaded, or there's too much crap going on inside, and you want to collect from outside (or otherwise, time-consuming collectibles from the unknown or wilderness or underworld; or the mass of restricted/forbidden/dumped items here and there (especially those precious silver bolts from the crossbowdwarves), especially after an ambush or siege; or even trap-cleaning post epic-fail on the invader front); make a mini-system designed to only collect from the outside, and after initial processing, have a small setup of middleman stockpiles set to be collected to the central processing unit. It can minimize casualties when collecting wood (not farmed) and random crap from battlefields (including trophy skulls and such, goblinite, stray (useful) ammo, etc.) for processing. Of course, keep them un-linked from the central processing unit until you feel ready to deposit it all to the true MASTER-IN for processing for real (minor FPS hiccups are to be expected during the transition/activation of dumping outside to indoors for the actual processing), or if the central processing is on a slow day (which will keep those lazy blokes moving).
Depending on location and purpose of certain collection grids, might I advise you make full use of the burrows system. "Outside" for outside collection, and "Underworld" burrows as a security countermeasure for underground collections before depositing into the MASTER-IN (place stockpile collectors behind and in front of the security setup you install, with the secondary outside of it to shorten transition distances between points of security (collect all from the depths, while others transfer them from out-transit (dangerous wilderness) to in-transit (Past security countermeasures, safer spot to collect from, especially if troglodytes and such (including some FBs and megabeasts) become a hassle), and then the in-transit one goes to MASTER-IN for final processing); just in case. Same applies for outside surface stockpiles.).
Many pardons for this ridiculously large post of mine. But that's all the info in it's unabridged glory.
Feel free to quote it if there's a useful (old version) ideas/implementations thread somewhere. It's THAT useful and glorious. I know from experience of trial and error making and refining it. It works just as well as it does on paper. So much that if completed on the first year, then the next 5-10 should be a cakewalk, provided security is up to scratch. Even a dinky 3x3 set of 3x3's will get the job done, though not as many volunteers, or as rapid a collection would occur. Speaking of which, one last note I forgot to mention is that if you turn off wheelbarrows for all stockpiles, EVERY AVAILABLE hauling dwarf will dedicate themselves to hauling into the main stockpile(s), instead of what's limited to how many wheelbarrows you assign. However, you won't get the speedy convenience of the wheelbarrow hauling advantage (especially where stones and heavy-ass items are concerned; on the flip-side, you'll have craploads of slowed-down haulers, instead of a few otherwise un-burdened haulers using wheelbarrows to haul the heavy crap). On the 'Otherwise' front, you can always make 2 MASTER-IN piles. One specifically for heavy crap (many 2x2-5x5 piles with 3 wheelbarrows assigned, each), and a mega MASTER-IN (of equivalent scale, I advise) with no wheelbarrows assigned for anything that is light and quick to haul sans-wheelbarrow (and ONLY light things, unless you want some poor dwarves to break their backs because of a minor miscalculation on the item-hauling checklist). That should make things magnitudes more efficient to sort out in the long run (by maybe 1.5x more efficiency).
With that setup, EVERY (assigned hauler) dwarf will be busy hauling (especially the light crap; and once there's nothing light left to haul, then they'll use the wheelbarrows to clean away the excess stones and heavy crap from the fortress; and they'll be able to tell them apart by-designation easily, thus keeping efficiency at it's highest), and the double-MASTER-INs will still serve their central purpose regardless.
Naturally, my original idea works best radially, and in the most central part of a fortress or map (or especially large areas, where you can make it a workshop warehouse mega-factory). You can always adapt a linear form for tighter quarters/spaces, or a lateral form for Z-level sorting methods. Of course, said alternative methods can be utilized as latter stages for processing as stated earlier. Keep industry separate from residential really easily. This can also make the cafeteria/kitchen/brewery much MUCH simpler to keep up with and organize; especially if you want only cooked items served, and the finest of drinks to be served, while trading the remainders, and keeping seeds out of the main food supply, while also keeping the freshest ingredients kitchen/still-access-only, and only seeds/processables (seeds, milks, and fat to render/process/grind and so forth) given back to the farmers to work with. This is, indeed, a bureaucrat's wet dream. A paragon of organization without need of a bookkeeper to track it all.
EDIT EDIT EDIT EDIT EDIT:
I didn't check the wiki lately, but this has to be featured somewhere in it. It's too useful to not include.
FINAL EDIT/THOUGHT:
It just occurred to me, it would help if we can get a DFHack that auto-assigns (or auto-hides for selecting) stockpiles with especially heavy items (slows down average haulers, unless hauled via wheelbarrow/minecart; deselect irrelevant items afterwards) and especially light items (same process (deselect irrelevant items post-processing), for anything light enough that anybody can do it). That can make this whole assignment system, especially with the double-MASTER-IN system, that much easier and quicker to setup. Assign hauling/stockpiling/trade by weight limits (for those cases where no wagons are present for the excess weight of several dozen mechanisms you're giving them; same applies to unusually heavy (fungi)wood, and certain ores/stones/goods/etc.).