[Tex/LaTex] Abbreviate journal name in bibtex using @string

acronymsbibtexcitingjournal

I am trying to abbreviate the journal name while using bibtex. My approach it to use an additional file for substitution as mentioned in the following question on this forum: How to abbreviate journal name in citation and also here on linux.org.

Main tex file is this:

\documentclass[11pt,a4]{article}
\usepackage{natbib}

%opening
\title{Just a theory}
\author{The Author}

\begin{document}

\maketitle

\begin{abstract}
A general treatment based on the work of Small and Big\cite{small1955} is presented which is extended for computing relevant values under the Harmonic oscillator approximation\cite{big1955}. 
\end{abstract}

\section{Introduction}
A general treatment based on the work of Small and Big\cite{small1955} is presented which is extended for computing relevant values under the Harmonic oscillator approximation\cite{big1955}. A general treatment based on the work of Small and Big\cite{small1955} is presented which is extended for computing relevant values under the Harmonic oscillator approximation\cite{big1955}. 
\section{Section first}
A general treatment based on the work of Small and Big\cite{small1955} is presented which is extended for computing relevant values under the Harmonic oscillator approximation\cite{big1955}. 

\bibliographystyle{plain}
\bibliography{abbr,ref}

\end{document}

And the abbr file and ref file are following:
abbr.bib

@string{3D Printing and Additive Manufacturing="3D Print. Addit. Manuf."}
@string{Advances in Complex Systems="Adv. Complex Syst."}

ref.bib

@article{small1955,
author = {Freely, I.P.},
title = {A small paper},
journal = {Advances in Complex Systems},
year = 1955,
volume = {1}
}

@article{big1955,
author = {Jass, Hugh},
title = {A big paper},
journal = {3D Printing and Additive Manufacturing},
year = 7991
}

I also tried this;

@string{3D Printing and Additive Manufacturing={3D Print. Addit. Manuf.}}
@string{Advances in Complex Systems={Adv. Complex Syst.}}

which also does not abbreviate the journal title. Present output is following;

Reference section

Best Answer

You could try the following.

In your abbr.bib:

@string{threedprint="3D Print. Addit. Manuf."}

@string{AdCompSys="Adv. Complex Syst."}

And in your ref.bib:

@article{small1955,
author = {Freely, I.P.},
title = {A small paper},
journal = AdCompSys,
year = 1955,
volume = {1}
}

@article{big1955,
author = {Jass, Hugh},
title = {A big paper},
journal = threedprint,
year = 7991
}

Resulting in:

enter image description here

Notice I've made three kinds of changes there. First, in your defined strings in abbrv.bib, instead of a long string name with spaces and all, a short one without them. Think of it as the key by which you call the string you defined. Second, when calling the string in ref.bib you do so without braces. It is not a field, it is a string defined somewhere else. Third, for reasons I don't know, letting the key start with a number ("3D") threw me an error, so I changed it to threedprint.