If $G$ is abelian, show the Prüfer rank $r(G)$ is finite iff $\max\{ d(H)\}$ is finite, for $d(H)$ the min number of generators of f.g. $H\le G$ This is part of Exercise 4.2.2 of Robinson's "A Course in the Theory of Groups (Second Edition)". According to Approach0 and this search, it is new to MSE.
The Details:
On page 98 to 99, ibid., we have

Let $G$ be an abelian group and let $S$ be a nonempty subset of $G$. Then  $S$ is called linearly independent, or simply independent, if $0\notin S$ and, given distinct elements $s_1,\dots, s_r$ of $S$ and integers $m_1,\dots, m_r$, the relation $m_1s_1+\dots+m_rs_r=0$ implies $m_is_i=0$ for all $i$.

. . . and . . .

If $p$ is prime and $G$ is an abelian group, the $p$-rank of $G$
$$r_p(G)$$
is defined as the cardinality of a maximal independent subset of elements of $p$-power order. Similarly the $0$-rank or torsion-free rank
$$r_0(G)$$
is the cardinality of a maximal independent subset of elements of infinite order. Also important is the Prüfer rank, often just called the rank of $G$,
$$r(G)=r_0(G)+\max_{p} r_p(G).$$

(See here for how the $\sup$ instead of the $\max$ is more appropriate. I don't think it effects the exercise is question though.)
The Question:

If $G$ is an abelian group, show that $r(G)$ is finite if and only if $\max\{ d(H)\}$ is finite where $H$ ranges over the finitely generated subgroups of $G$. [. . .] [Note: $d(H)$ is the minimum number of generators of $H$.]

Thoughts:
I doubt there's an easy way to tackle this using iff-statements, so I proceed as follows . . .
Suppose $G$ is an abelian group such that $r(G)=n$ for some $n\in\Bbb N$. Then
$$r_0(G)+\max_{p} r_p(G)=n.$$
This implies $r_0(G)=s$ and $\max_{p}r_p(G)=t$ for some $s,t\in\Bbb N\cup\{0\}$ such that $n=s+t$.
Where do I go from here?

Of course, if $G$ is finite, then $r_0(G)=0$. In fact, upon reflection, the question is trivial for finite $G$. (Right? Because each (finitely-generated) $H\le G$ must be finite . . . )

Next, I should look at the sufficiency.
Suppose $G$ is an (infinite) abelian group such that
$$\max\{ d(H)\mid H\le G, H \text{ is finitely-generated}\}$$
is finite, where $d(H)$ is the minimum number of generators of $H$.
Where do I go from here?

I can see, sort of, that $r_0(G)=0$, but I don't know how to justify it and it wouldn't shock me if it's not necessary. I feel the same way about the fact that $r_0(G)$ is finite, except that it must be true in order for $r(G)$ to be finite.

Nowhere have I used that $G$ is abelian.

This seems like a problem I ought to be able to answer myself, given enough time. The type of answer I'm hoping for is a full solution but I'd be happy with a good hint or two.

Please help :)
 A: Here is a quick sketch proof - more detail on request.
First suppose that $\max\{ d(H) : H \le G, H\ \mbox{f.g.} \} = n$ is finite. We claim that $r(G) \le 2n$. If not then, either $r_0(G) > n$ or $r_p(G) > n$ for some prime $p$.
In the first case, there is a torsion-free subgroup $H$ with $r(H) > n$, so $H$ contains a set $s_1,\ldots,s_{n+1}$ independent elements. Then, putting $H = \langle s_1,\ldots,s_{n+1} \rangle$. we have $d(H) = n+1$, contradiction. The argument when $r_p(G) > n$ is similar.
Conversely, suppose that $r(G) = n$ is finite. We claim that $\max\{ d(H) : H \le G, H\ \mbox{f.g.} \} \le 2n+1$. If not, then there exists $H \le G$ with $d(H) = 2n+1$.
By the fundamental theorem of abelian groups, we have
$$H \cong {\mathbb Z}^r \oplus \frac{\mathbb Z}{d_1{\mathbb Z}} \oplus \cdots \oplus \frac{\mathbb Z}{d_s{\mathbb Z}}$$
for integers $r,s \ge 0, d_i>1$ with each $d_i|d_{i+1}$.
Then $d(H) =r+s$, so either $r>n$ or $s>n$. If $r>n$ then the generators of the subgroup ${\mathbb Z}^r$ are independent, contradicting $d(G) = n$, and similarly if $s>n$.
